mirror of
https://github.com/facebook/react-native.git
synced 2024-11-21 21:27:46 +00:00
9c11d7ca68
Summary: Add changelog for 0.76.2 ## Changelog: [Internal] - Add changelog for 0.76.2 Pull Request resolved: https://github.com/facebook/react-native/pull/47620 Test Plan: N/A Reviewed By: rshest Differential Revision: D65963142 Pulled By: cipolleschi fbshipit-source-id: f48fdfac2476e891c91a90a62caa1ad1be76e410
541 KiB
541 KiB
Changelog
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)
v0.75.4
Fixed
Android specific
- Fix Headless Crash
Tried to finish non-existent task with id
(56a282c44d by @RodolfoGS) - TextInput's
contextMenuHidden
prop bug fix (366f1d0df3 by @alanleedev) - RNGP - Sanitize the output of the config command (0265ea0577 by @cortinico)
iOS specific
- Convert
NSNull
tonil
before checkingtype
inreadAsDataURL
(99ab845a5c by @haileyok) - Add back the BUNDLE_COMMAND (afd74ad89d by @Vin-Xi)
- Use CONFIG_CMD if set (a4ec49cbe6 by @krystofwoldrich)
- App crash happening when navigate to a new app screen with a displaying modal (8ec672204d by @zhouzh1)
v0.75.3
Changed
- Infra: Remove resolution and add commander as devDependency for the monorepo (cf7b9b9486 by @cipolleschi)
- CLI: Bump CLI to 14.1.0 (6a08c38263 by @cipolleschi)
Fixed
- TypeScript: Allow readonly array type for transform property (c16defaff2 by @tjzel)
Android specific
- Autolinking: Fix autolinking issues for Pure C++ TurboModules (833c3a2cf5 by @hsjoberg)
- Renderer: Don't use mGapBetweenPaths if not drawing a border (8501b6396b by @knappam)
- Image: Make getUri and isResource open (8c81ffa60a by @shubhamguptadream11)
- RGNP: Remove unnecessary dependency on
gradle-tooling-api-builders
- serviceOf failure (1067798a7e by @cortinico)
iOS specific
- Infra: Include x86_64 slice when building for visionOS simulator (05dec917f2 by @okwasniewski)
- Infra: Support bundle install from outside the ios folder using --project-directory (b22970e3cf by @blakef)
- Codegen: Codegen will start looking for codegen-enabled dependencies from the project root. (46d17efa62 by @dmytrorykun)
v0.75.2
Added
Android specific
- runtime: Add support for handling
com.facebook.react.bridge.Dynamic
as parameter for TurboModules (45cd81706d by @cortinico)
Changed
Android specific
- ReactRootView: Replaced
mLastHeight
withmVisibleViewArea.height()
since mLastHeight value is not getting updated. Forwidth
we are already usingmVisibleViewArea.width()
(603eb94dd9 by @shubhamguptadream11) - ImageSource:
open
for inheritance (02d9979c32 by @cortinico)
Removed
iOS specific
- RCTBaseTextInputView: UIReturnKeyDefault (26aff664c0 by @elencho)
Fixed
- codegen: scripts require
yargs
(0979921850 by @tido64)
v0.75.1
Changed
- hermes: Bump Hermes version (f202e80177 by @cortinico)
Removed
Android specific
- renderer: Gate off % border radii on Android Paper (bbd5b5e157 by @NickGerleman)
- renderer: Gate off % translate on Android Paper (0273123dde by @NickGerleman)
v0.75.0
Breaking
- codegen: Use hasteModuleName for C++ Turbo Module enums (b7fc5867f2 by @christophpurrer)
- codegen: Use hasteModuleName for C++ Turbo Module structs (07261d0408 by @christophpurrer)
- codegen: Don't support 'float' enums in Turbo Modules (536edf3726 by @christophpurrer)
- codegen: Native modules using the codegen now throw an error when called with
null
for optional but not nullable arguments. (67b9628af5 by @rubennorte) - typescript: Transform TouchableHighlight from JS
class
toForwardRef
component (401f2fbb14 by @retyui) - typescript: Transform
TouchableOpacity
from JSclass
toForwardRef
component (3d00549399 by @retyui) - eslint: RN ESLint config no longer runs Prettier during ESLint (727f30bd0b by @gaearon)
- c++: ScrollViewShadowNode.h - Make getContentOriginOffset to know info about if call-site want transform or not (ce588db63f by @realsoelynn)
- c++: RuntimeExecutor.h - Remove executeAsynchronously and executeSynchronously_CAN_DEADLOCK (8b1a01610c by @philIip)
- c++: JsErrorHandler.h - Rename JsErrorHandlingFunc to OnJsError (2e3f2268dc by @RSNara)
- c++: JsErrorHandler.h - Rename handleJsError to handleFatalError (c041b9f40f by @RSNara)
- c++: ReactPrimitives.h - Remove unused imports (folly/dynamic.h) (4fd95b6e02 by @christophpurrer)
- c++: LongLivedObjectCollection.h - Make
LongLivedObjectCollection::get
accept a Runtime reference as parameter. (86a52cc2dc by @fabriziocucci) - c++: LongLivedObject.h - Make
LongLivedObject
constructor accept aRuntime
reference. (3706bf077e by @fabriziocucci) - c++: Rename utils/jsi files (d0cac87c6e by @TatianaKapos)
- TextInput: Remove deprecated onTextInput callback (34a50ae8ef by @javache)
- Pressability: Removed deprecated methods from Pressability. (e4f3338069 by @javache)
- cli: Remove the ram-bundle command. (58b45e86a6 by @blakef)
Android specific
- ReactViewBackgroundDrawable: Deprecate
ReactViewBackgroundDrawable
in favor ofCSSBackgroundDrawable
(d7766fa927 by @NickGerleman) - ReactContext: Make ReactApplicationContext and ReactContext abstract. Please instantiate BridgeReactContext instead (bridge mode). Or BridgelessReactContext instead (bridgeless mode). (e69f6755c8 by @RSNara)
- layout: Enable flex gap percentage value for RN. (41a14962fc by @realsoelynn)
- layout:: Set and require
android:supportsRtl="true"
for RTL layout (82c6f8a580 by @NickGerleman) - turbomodule: JSIModule - Deleting this class as you should be using
TurboModule
instead (73b4d67a78 by @arushikesarwani94) - runtime: ReactHostImpl - Removing
ReactJsExceptionHandler
param from constructor and providing a default private implementation (fe7e7a015f by @alanleedev) - DevSupport: DevSupportManagerFactory - Method
.create()
changed to take an additional parameter of typePausedInDebuggerOverlayManager
(nullable) (1d26907ca4 by @motiz88) - runtime: OnLoad.cpp - Make the app responsible for returning core turbomodule if not using default app setup/template (7facb32f30 by @RSNara)
- measurement: Delete UIManagerModule.measureLayoutRelativeToParent() (958f8e2bb5 by @arushikesarwani94)
- PopUpMenu UIManager.showPopupMenu() and UIManager.dismissPopupMenu() have been removed (c631e93341 by @alanleedev)
- ReactContext: Delete ReactContext.initializeWithInstance(). ReactContext now no longer contains legacy react instance methods. Please use BridgeReactInstance instead. (fb23470483 by @RSNara), (05ef779c0b by @fabriziocucci), (14fb1cc335 by @RSNara), and (f99dc486cd by @RSNara)
- ReactContext Remove getJavaScriptContextHolder() from BridgelessReactContext since now it can be accessed through BridgelessCatalystInstance in Bridgeless mode (4595351310 by @arushikesarwani94)
- ReactContext Remove getRuntimeExecutor() from ReactContext since now it can be accessed through BridgelessCatalystInstance in Bridgeless mode (f7b9aafd10 by @arushikesarwani94)
iOS specific
- runtime: RCTHost.h - Remove
getSurfacePresenter
andgetModuleRegistry
(f19371f28d by @cipolleschi) - Image: Remove unused RCTImageLoadingPerfInstrumentationEnabled (f6b9a42985 by @realsoelynn)
- Error Handling: Remove
RCTRedBox
access throughRCTBridge
(b5db214d2a by @realsoelynn) - runtime EventPriority - Remove EventPriority class and always use the default EventPriority::AsynchronousBatched. This is potentially a breaking change if something in OSS sets a different priority. If a build fails because of this, simply remove the use of EventPriority. (55ed1c26ab by @sammy-SC)
- PushNotificationIOS: RCTPushNotificationManager - Deleting deprecated didReceiveLocalNotification & didReceiveRemoteNotification callbacks (7fffe692e7)
- PushNotificationIOS: PushNotificationIOS - Deleting deprecated alertAction and repeatInterval (410e3b5ebd)
- PushNotificationIOS: PushNotificationIOS - Deleting old push notification implementation (916dde4c60 by @philIip)
- cocoapods: Rename BUILD_FROM_SOURCE to RCT_BUILD_HERMES_FROM_SOURCE (6a1509f318 by @cipolleschi)
- cocoapods: Rename React-Codegen to ReactCodegen (6549216b76 by @dmytrorykun)
- TextInput: Remove deprecated onTextInput callback (24aece35b4 by @Saadnajmi)
Added
- Image:
Image.getSize/getSizeWithHeaders
method returns a promise if you don't pass asuccess
callback (2c1bcbac81 by @retyui) - SectionList: Fixes SectionList Unmounting issue with separatorComponent on data addition and removal. (6204ea36d3 by @Biki-das)
- cli: Move cli Android build into core (62acc29896 by @blakef)
- cli: Move cli iOS build into core (98f0893f39 by @blakef)
- cli: core-cli-utils now builds for Android (89f16da89e by @blakef)
- codegen: Add EventEmitter code-gen support for C++ Turbo Modules (fd618819c7 by @christophpurrer)
- codegen: Add function to only generate RNCore components (9a27c08fb9 by @cipolleschi)
- codegen: Skip generation of RNCore if the files have been already generated (03ba46f7e6 by @cipolleschi)
- debugger: Add
ReactNativeApplication.[enable,metadataUpdated]
CDP messages for reading host metadata (aced4072cf by @huntie) - debugger: Inspector proxy: Add ping/pong keepalive to debugger connections. (704756352c by @robhogan)
- debugger: Support opening React DevTools from both Chrome DevTools frontend (React Native DevTools) and
react-devtools
standalone app (430dd0be26 by @hoxyq) - runtime: Add ReactRootViewTagGenerator (7dec625eca by @christophpurrer)
- runtime: Added missing
remove
methods forLinking.addEventListener
andAccessibilityInfo.addEventListener
Jest mocks (2483c63017 by @levibuzolic) - runtime: Implement
requestIdleCallback
andcancelIdleCallback
in the new architecture (abfadc6083 by @robik) - style: Added
AppRegistry.setRootViewStyleProvider
(dbdd4da14f by @acoates-ms) - turbomodule: Add EventEmitter C++ bridging type (2a0a11256a by @christophpurrer)
- turbomodule: Turbo Module EventEmitters as functions (42f136d00d by @christophpurrer)
- typescript: Add missing
Header
methods (028615180b by @retyui) - typescript: Allow to pass empty string as style (1ea269f42c by @retyui)
Android specific
- Image: Adds a new
Image
propresizeMultiplier
to help increase quality of small images on low DPI devices (b6c3433537) - PopUpMenu: Add (optional) onPopupDismiss() callback for PopupMenuAndroid (bc3e3360d1 by @alanleedev)
- StatusBar: Added null checks, marked null safety in StatusBarModule (7349dabae2)
- StatusBar: Added suppression for deprecated getter/setter usage in StatusBarModule (ac51deeaf4)
- c++: Allow bridgeless apps to register cxx modules via cxxreactpackages (b9e52f0807 by @RSNara)
- c++: Introduce CallInvokerHolder stable API (69bb4fca44 by @philIip)
- colors Update ColorPropConverter to support color function values (4fb5573796 by @ryanlntn)
- colors: Add isWideColorGamutEnabled to ReactActivityDelegate (0a9891a2f2 by @ryanlntn)
- colors: Extend Property Processor to support long props (0a80270187 by @cipolleschi)
- colors: Update ColorPropConverter to support color function values (fa7dbd578d by @ryanlntn)
- colors: Update bridge to handle long values (0dc5c5f1f4 by @ryanlntn)
- error handling: Option to set a custom JSExceptionHandler instance (098454d425)
- gradle: Expose prefabs for newly added targets (c16761da83 by @WoLewicki)
- layout Percentage support in translate (c13790ff1d by @intergalacticspacehighway)
- layout: Added support for using percentages when defining border radius related properties. (181ed33ab0 by @jorge-cab)
- runtime: Add 64 bit integer (long) value support to MapBuffer (57ed0fb309 by @ryanlntn)
- runtime: Add the
ReactMarkerConstants.CONTENT_APPEARED
support on Android in bridgeless mode. (5da9fdf8f1 by @Kudo) - runtime: Added
onUserLeaveHint
support intoReactActivityDelegate
(3cf6c64a80 by @behenate) - runtime: Added
onUserLeaveHint
support intoReactActivityDelegate
(6450d08187 by @behenate) - runtime: Added featureflag to avoid additional background threads during execution (4324f08749 by @javache)
- runtime: Added getNativeModule(name) to ReactContext (fdb2427a86 by @javache)
- runtime: GetJavaScriptContextHolder() supported in BridgelessReactContext since it's supported in ReactContext[Bridge] (dfa6519749 by @arushikesarwani94)
- runtime: Introduce BridgeReactContext (6386988de1 by @RSNara)
- runtime: Introduced ReactContext.hasReactInstance() to replace .hasCatalystInstance() (3a3f3e6232 by @RSNara)
- turbomodule: Add BindingsInstaller for TurboModules (d999e9bf1e by @Kudo)
iOS specific
- Modal: RCTConvert to support UIModalPresentationStyle (2d547a3252 by @vonovak)
- TextInput: Add all supported ReturnKeyTypes (ed9978b8de by @elencho)
- bridgeless Expose host delegate methods (f500b47a95 by @zhongwuzw)
- c++: Introduce CallInvoker support in bridgeless native modules (8f9ff89093 by @philIip)
- cocoapods: Libraries can now declare Swift Package Manager dependencies in their .podspec with
ReactNativePodsUtils.spm_dependency
(f903f34837 by @mfazekas) - color: Add basic DisplayP3 color support (a40bd8e34a by @ryanlntn)
- fonts: Update font to handle system condensed variant (86dffb3f15 by @shidoro)
- layout: Added support for using percentages when defining border radius related properties. (9c4ee6df08 by @jorge-cab)
- layout: Percentage support in translate in new arch. (f997b81288 by @intergalacticspacehighway)
- runtime: Add Instruments signposts API for SystraceSection (840c31c3a4 by @lyahdav)
- runtime:: Optimize RCTKeyWindow() for iOS 15+ (b2fba371df by @okwasniewski)
- swift Set SWIFT_ACTIVE_COMPILATION_CONDITIONS to DEBUG (756f89aa59 by @okwasniewski)
- turbomodules Add BindingsInstaller for TurboModules (bed487e24b by @Kudo)
- xros: Prebuilt version of Hermes for visionOS (924fb3de9b by @okwasniewski)
Changed
- Animated: Improved performance of
Animated
components (452373b5bf by @yungsters) - BlobModule: Add info to invalid blob response error (489df722b3)
- BlobModule: Trim invalid blob response error message (30463fb007)
- Pressable: Improve performance of
Pressable
component. (cfa784c5ce by @Zahoq) - ScrollView: MaintainVisibleContentPosition property on ScrollView now selects the first partially visible view as the anchor, rather than the first fully visible view. (252ef19c8d)
- StyleSheet Optimized performance of
StyleSheet.compose
(34331af9ce by @yungsters) - c++: Allow invoking the AsyncCallback synchronously to allow for tight performance optimization. (765e542c8d by @nlutsenko)
- debugger: Inspector proxy: Rewrite 127.0.0.1 to localhost in source map URLs for better IPv4->IPv6 tunnelling support. (a52bd7dd08 by @robhogan)
- debugger: Update Chrome launch flags for
--experimental-debugger
launch flow (b1bb0bee41 by @motiz88) - deps: Bumped @react-native-community/cli to 14.0.0
- hermes: Enable regenerator transform for hermes-canary (a0237e96f1 by @avp)
- hermes: Disable Babel plugin for arrow functions for Hermes (cdc3b9cdfc by @yungsters)
- jest: Enables React global flag that causes Jest testing environment to require
act()
(5a8327857b by @yungsters) - js: Console polyfill now copies all properties from the existing
console
object (949296571b by @motiz88) - linter:
no-string-refs
is now a lint error (387250112e by @yungsters) - react-dev-tools: Upgrade[react-devtools-core]: ^5.3.1 (2617ec5570 by @hoxyq)
- react: Upgrade to
react@18.3.1
(abb7070a51 by @yungsters) - share Update
Share.share()
's argument types to be more explicit. (8b53d41a88) - template: Moved the template from react-native into react-native-community/template (07abfceae1 by @blakef)
- testing:
mockComponent
now also mocksname
(5062c5256e by @yungsters) - testing: Allow moving SyncCallback for advanced use-cases (43c55e98d4 by @javache)
- yoga: Reduce warning level of distributed Yoga builds (b696a7dc5e by @NickGerleman)
Android specific
- Alert: Migrated
AlertFragment
dialog builder to useandroidx.appcompat
(1/2) (297ded90aa) - Alert: Migrated
AlertFragment
dialog builder to useandroidx.appcompat
(2/2) (600d3f6ff1) - deps: Bump Fresco to 3.2.0 to fix CVE-2018-14498 (744024be7f by @cortinico)
- deps: AGP to 8.5.0 (19f6aec4a1 by @cortinico)
- deps: Kotlin to 1.9.24 (3f3abf5b40 by @cortinico)
- DevSupport Expose
openDebugger()
method onDevSupportManager
(b309af79e8 by @motiz88) - DevSupport In bridgeless,
useDevSupport
now is configurable by ReactNativeHost. (d195fd0c06 by @javache) - DevSupport: Decouple
DevInternalSettings
fromDevSupportManagerBase
(52cec1e798 by @Kudo) - DevSupport: Update constructor signature of
DevServerHelper
(a1e8118541 by @huntie) - gradle: Expose
mapbufferjni
via prefab. (c73e22142e by @tomekzaw) - runtime: Changed the
handleRemoveView
function inReactViewGroup.java
to ignore calls forViews
that are not children of thisViewGroup
(0d7a92b551 by @bartlomiejbloniarz) - runtime: Enforce Activities using ReactDelegate implement DefaultHardwareBackBtnHandler. (a2d277f740 by @javache)
- runtime: Simplified ReactActivityDelegate to expose a single createRootView method. (3283202248 by @javache)
- runtime: Throwing IllegalArgumentException from ReactPackage is no longer suppressed (2584bcb6c8 by @javache)
iOS specific
- Modal: Move the snapshotting code before the dismissal. (30d6251b78 by @cipolleschi)
- Networking: Fire
onprogress
event forXMLHttpRequest
even when theContent-Length
header is missing in the response headers (457d14bd1b) - RCTAppDelegate: Improve reusability for RCTRootViewFactory (23709f7c61 by @Kudo)
- RCTAppDelegate: Support
customizeRootView
fromRCTRootViewFactory
(8956869792 by @Kudo) - cocoapods: Add
DEFINES_MODULE
for React-jsinspector.podspec (4e6186555e by @Kudo) - ruby: Update Gemfile in template (06eea61c19 by @matinzd)
- runtime: Fallback to the first
foregroundInactive
window when there are noforegroundActive
windows in RCTKeyWindow (42ceacd281 by @cipolleschi) - runtime: Move
notifyObservers
straight toRCTEventDispatcher.mm
. (f5c888c2d7 by @WoLewicki)
Deprecated
- cli: npx react-native init is deprecated and will log a warning until 0.76 (47a3f52007 by @blakef)
- runtime: Deprecate RCTRuntimeExecutorModule (7ea84bd3eb by @philIip)
Removed
- Image: Remove non-existent methods from
<ImageBackground/>
component (09c903c439 by @retyui) - TextInput: Remove viewconfigs for onTextInput callbacks (910cde6134 by @javache)
- debugger:
launchId
query param for/debugger-frontend
is no longer generated automatically for each/open-debugger
call. Caller of/open-debugger
is now responsible for generating thelaunchId
, which will be passed along to/debugger-frontend
. (b7de916664 by @EdmondChuiHW) - dev-middleware:
react-native/dev-middleware
: Remove non-standardfaviconUrl
field from CDP/json
response (df19e597e3 by @huntie) - typescript: Remove
tvParallaxProperties
prop fromTouchableOpacity
& add missingfocusable
,rejectResponderTermination
props (0a0cd6517f by @retyui) - android - Animated: Removed
NativeAnimationsDebugModule
(already not Public API) (95f7a5c597 by @yungsters) - **ios - cocoapods: ** Delete deprecated Xcode version check (2b85a236a1 by @naxey)
Fixed
- Animated: Fix broken native animation in Paper (92540a618d by @sammy-SC)
- Animated: Fix sequence restart failure (a93a15aca3 by @asyler)
- Animated: Fixed memoization for components wrapped with createAnimatedComponent (be06fd4e22)
- Button: Adds forwardRef call to new functional component implementation of Button control. (8e7263a415 by @chiaramooney)
- FlatList: Fix clicking items on the inverted FlatList on the new architecture (3753b7a0e7 by @kosmydel)
- Networking Fix fetch memory leak (c647950e5e by @huzhanbo1996)
- TextInput Handle
fontWeight
normalization for TextInput component (15f27bc299 by @NickGerleman) - Touchable: Fixed inconsistency in TouchableX component disabled / focusable behavior (775713cef7 by @rozele)
- c++: Avoid ShadowTreeRegistry::mutex_ read lock reentrancy (1a164fae6a by @rozele)
- cli: Allow proxying commands from react-native to react-native-community/cli with explicit warning (9aed45a9d9 by @blakef)
- cli: Fix version checker not considering nightlies (489d9f6c62 by @tido64)
- codegen: Align CodegenSchema.d.ts with CodegenSchema.js (ea3a7143b9 by @christophpurrer)
- codegen: Don't break script phase and codegen when coreutils installed on macOS (e0799536ef by @blakef)
- codegen: Fixed
Props.h
created from codegen missing default initializers in C++struct
(639d890dff by @alanleedev) - codegen: Make sure that we can't include Codegen symbols multiple times (46b6453eb6 by @cipolleschi)
- codegen: Fixed crash when passing fewer arguments than expected in native modules using codegen (179b684e76 by @rubennorte)
- codegen: Fixed crash when passing non-numeric values where RootTag is expected to methods in native modules using codegen (abbc6eb022 by @rubennorte)
- codegen: Fixes enum codegen value cases (1a1795a537 by @zhongwuzw)
- debugger: LogBox and Chrome DevTools stack frame collapsing patterns are now compatible with Windows file paths. (8d0046a5e1 by @motiz88)
- debugger: Debugger frontend socket-termination countdown now begins after the ping message is actually sent (20462ca984 by @EdmondChuiHW)
- debugger: Fix breakpoints opening to incorrect location or disappearing from debugger frontend UI. (ac714b1c33 by @robhogan)
- debugger: Inspector proxy: prevent errors proxying a device message from blocking the handler queue or spamming logs. (e05319cc87 by @robhogan)
- error handling: Fixed LogBox not showing correctly on the New Architecture (db1043dfbf by @rubennorte)
- error handling: Remove accidental duplication in React warnings in Logbox (32c3cd3e8a by @gaearon)
- error handling: Fix logbox reporting for React errors (64e6721b23 by @yungsters)
- error handling: Support component stacks without source info. (1b53051b8c by @rickhanlonii)
- error handling: Support component stacks without source info. (e9e668f0ec by @rickhanlonii)
- error handling: Support hermes component stacks with missing source info. (82db330360 by @rickhanlonii)
- infra: Replace deprecated babel-plugin libraries to fix deprecation warnings on installation (6213b2a62a by @kaganece)
- jest: Fix jest setup for Image methods (resolveAssetSource, getSize, prefetch, queryCache) (d53cc2b46d)
- layout: Fix duplicate rotation operations (54f582f651 by @NickGerleman)
- layout: Fixed padding not being applied to inline views in text (12aef32b82 by @j-piasecki)
- layout: Fixup margin: auto and justification behavior for overflowed containers (f21d9afe0b by @NickGerleman)
- runtime: Add
collapsableChildren
prop (7b44c8d1d0 by @NickGerleman) - runtime: Add missing
NativeState
methods to theWithRuntimeDecorator
class. (218ea5d44c by @bartlomiejbloniarz) - runtime: Add option for multiple
mountingOverrideDelegates
(358fe46969 by @WoLewicki) - runtime: Fixed prioritization of idle priority tasks, which were incorrectly scheduled as immediate priority (0ca3ed87f3 by @rubennorte)
- runtime: New architecture timer methods now return integers instead of an opaque object. (a16f7dc547 by @javache)
Android specific
- Animated: Reduce maximum log spam from FrameBasedAnimationDriver (42299499d8)
- DevMenu: ShouldShowDevMenuOrReload() in RELEASE mode (63043b79be by @arushikesarwani94)
- DevSupport: OnKeyLongPress() in RELEASE mode (bdcc979bab by @arushikesarwani94)
- Modal: Fix a crash in Modal component (d116837da2 by @sammy-SC)
- PointerEvents: PointerEvents were not dispatching after a scroll event (766ece7b9b by @javache)
- PointerEvents: Views would still receive hover events when nested in a view with pointer-events: "none" (38cbc082db by @javache)
- ReactDelegate: Fixing exposing ReactDelegate through ReactActivity for reload() (e25860f07c by @arushikesarwani94)
- ScrollView: Add support for scrollEventThrottle for ScrollView on the New Architecture. (4d2262b8d2 by @dmytrorykun)
- ScrollView: Fix maintainVisibleContentPosition during momentum scroll (a9e6759bb5 by @janicduplessis)
- StatusBar: Fixed StatusBar.currentHeight calculations to honor all cutout sizes (0b8222a854)
- StatusBar: Fixed StatusBar.currentHeight calculations to honor all cutout sizes (cc485ccf7d)
- Text: Fixed
adjustFontSizeToFit
when used withoutnumberOfLines
(b236e154a1 by @j-piasecki) - Text: Fixed
adjustsFontSizeToFit
not working on Android when using the new architecture (747a96b7b3 by @j-piasecki) - autolinking: Fix autolink plugin for libraries that are platform-specific (20521cc908 by @gabrieldonadel)
- autolinking: Fix core autolinking not working on Windows (c8cb3d4a59 by @cortinico)
- autolinking: If
npx react-native-community/cli config
fails or timeouts proper error is shown and built is aborted, instead of leaving and empty autolinking.json (3782511350 by @mfazekas) - error handling: Android exceptions without a message would lead to unexpected crashes (48f48f8e67 by @javache)
- error handling: Fixed android native rejections should be instanceof Error (62cbdbbcc6 by @huzhanbo1996)
- error handling: Show RedBox after reloads fail (bridgeless) (2f8d4f0c25 by @RSNara)
- gradle: Fixed build from source failing due to a missing file (b2898540c9 by @j-piasecki)
- gradle: Make
rrc_textinput
on Android a shared library (ea8ad6457c by @j-piasecki) - kotlin: Fix crash due to missing JvmStatic to
convertToCase
(cef17ba14f by @cortinico) - kotlin: Use
JvmStatic
annotations for all methods fromAndroidUnicodeUtils.kt
(54dadd7bda by @WoLewicki) - layout Propagate layout direction to Android Views and Drawables (e16faca18c by @NickGerleman)
- layout: Better overflow support for ScrollView, Text, TextInput (bfb3b7008d by @NickGerleman)
- layout: Fix cached spannable measurement path (002396beae by @NickGerleman)
- layout: Fixed
textAlign
not being taken into account when positioning views inlined in text (1f08799560 by @j-piasecki) - layout: Resolved error "No virtual method setLeftTopRightBottom" (08ecdee71c by @mmmoussa)
- renderer: Cascading renders were not mounting correctly when
batchRenderingUpdatesInEventLoop
is enabled. (849da2146c by @javache) - runtime: Fix ClassCastException in
ReactModalHostView
(15ff82f811 by @cortinico) - runtime: Fix a case when view preallocation or props forwarding on Android lead to dropped props update (cf926a1329 by @sammy-SC)
- runtime: Fix crash in
getChildAtWithSubviewClippingEnabled
(d6a44e632a by @javache) - runtime: Fix dynamic_cast (RTTI) for ShadowNodeWrapper when accessed by third-party libraries again (ea958c69f6 by @tomekzaw)
- runtime: Fixed app reloading for
ReactActivity.getReactDelegate().reload()
. (539922339b by @Kudo) - runtime: Fixed error thrown during ReactInstance teardown (e67d5560cf by @javache)
- runtime: Improved resiliency of reloads when bundle loading fails (524e3eec3e by @javache)
- runtime: Local scheduler for thread-safe (7dd91d3437 by @Sunbreak)
- runtime: Surfaces no longer leak activity once stopped (af721084af)
- runtime: Tentative fix for NPE
JavaTimerManager$IdleCallbackRunnable.cancel
(e686b4330d by @cortinico) - runtime:: ViewManagers can pass context to their base class. (90663081de by @javache)
- runtime: Unmount React root when activity is destroyed on Bridgeless (33aa83a0e6 by @fabriziocucci)
- style: Border-Radius percentages are now correctly resolved. (082e29ed4e by @jorge-cab)
- style: Fix borderRadius incorrect overrides (8d5bbca1eb by @jorge-cab)
- turbomodule: Cover SingletonMap when parsing events exported by module (8a15e0d97a by @WoLewicki)
iOS specific
- Animated: Fixes animated frame timing (690df7a556 by @zhongwuzw)
- ContextMenu: Hide AutoFill from context menu when using
contextMenuHidden
(493dbb2190 by @jakex7) - DevMenu: Fix RCTPerfMonitor not showing up in scene based app (16775215d5 by @ouabing)
- InteropLayers: Make sure to pass the RCTBridgeProxy to ViewManagers (d6c90cf7ed by @cipolleschi)
- Networking: Fixed headers content type check for iOS bundle download (d9b0f15c84 by @jayshah123)
- PullToRefresh: Properly recycle the RCTPullToRefreshViewComponentView (18f0a90358 by @cipolleschi)
- RCTAppDelegate: Added space to $(inherited) string to avoid creation of wrong cpp flags in RCTAppDelegate podspec (be93092c1b by @nikhiltekwani09)
- RCTAppDelegate: Add missing forward blocks to RCTRootViewFactory (9d79f05e68 by @okwasniewski)
- RCTAppDelegate: Allow importing RCTAppDelegate in Swift (7c953698b4 by @okwasniewski)
- RCTAppDelegate: Allow usage of
RCTRootViewFactory
from Swift (5aea518d88 by @okwasniewski) - RCTAppDelegate: Fixed Method name in hint from customiseView to customizeRootView (46d4b837a5 by @svengiebel)
- RCTAppDelegate: Fixes customizeRootView migration comment (fbf9c4343a by @zhongwuzw)
- RCTAppDelegate: Remove loadSourceForBridge in RCTRootViewFactory (0c02b26c1e by @okwasniewski)
- SCrollView: Preserve content offset in ScrollView when the component is suspended (510d2906b2 by @sammy-SC)
- ScrollCiew: Remove usage of deprecated scrollIndicatorInsets in RCTScrollView (ce10ce4d98)
- ScrollView: Fixing scroll view breakage caused by #44789 (f4b921c1d5)
- Text: Fixed font size enlarging when
adjustFontSizeToFit
is set (ed7766cee9 by @j-piasecki) - Text: Fixed text highlighting in the New Architecture (eadcebbb3e)
- TextInput: Fix Multiline TextInput with a fixed height scrolls to the bottom when changing AttributedText (f6badca2f9 by @fabOnReact)
- Touchable: Fixed stale state on TouchableOpacity and TouchableBounce (00055f89a0 by @sammy-SC)
- UIActivityIndicatorViewStyles: Removed references to deprecated UIActivityIndicatorViewStyles (a23ae9c7f2)
- accessibility: Fix the accessibility label not being applied to text components on the new architecture (9922628032 by @j-piasecki)
- autolinking: Auto linking script of script phase (e320ab47cf)
- cocoapods: Exposes react_native_pods methods through autolinking.rb (6b56fb0d0b by @blakef)
- dark mode: Fix dark mode on initial load. (b957513cc6)
- error handling: Add missing call to
[super viewDidLoad]
inRCTRedBox.mm
. (d93788301c by @hakonk) - layout: Fix
InputAccessoryView
width on device orientation change (8597727c28 by @mauriciomeirelles) - objc: Fixed missing header imports (46f53e97f0)
- privacy manifest: Fix error on handling privacy manifest (c24929c5f4 by @cxa)
- privacy manifest: Fix privacy aggregation (00b366159d by @aleqsio)
- privacy manifest: Privacy Manifest aggregation failing due to missing nil check (47b42dc845 by @swrobel)
- runtime: Avoid calling abstract methods in RCTComposedViewRegistry (9bdd777fd7 by @cipolleschi)
- runtime: Extract the constants from ViewManagers in the UI Thread if needed. (94537c7beb by @cipolleschi)
- runtime: Fixed
HermesExecutorFactory.h
build error when importing its private header (2d46dbe6ce by @Kudo) - runtime: Fixes NSDataBigString length calculation (9d637e4622 by @zhongwuzw)
- runtime: Fixes race condition of m_batchHadNativeModuleOrTurboModuleCalls (3f74f69cf0 by @zhongwuzw)
- runtime: Implement shared atomic counters and replace static integers in
RCTImageLoader
andRCTNetworkTask
that were accessed concurrently, which in some cases lead to data races. (ffc16fc18b by @hakonk) - runtime: Let RCTHost be initialized with a function to provide the
bundleURL
so that it can connect to metro on Reload when the url changes. (8b8b85bb1f by @cipolleschi) - runtime: Missing
progress
inonProgress
native event arguments (78ab5f4b83 by @netmaxt3r) - style: Fixed border being drawn over children when no color was set (91c5a6d936 by @j-piasecki)
- style: Removed Legacy iOS 10 code messing with border radius (9204e44ef5 by @jorge-cab)
- turbomodule: Fixed race condition in native module invalidation. (b7812a8b6c by @dmytrorykun)
- xcode: Do not use temporary node when creating the .xcode.env.local (8408b8bc96 by @cipolleschi)
v0.74.6
Added
Android specific
- [0.74] Add support for handling
com.facebook.react.bridge.Dynamic
as parameter for TurboModules (a9588f3718 by @cortinico)
Changed
- Bump hermes version (4e737b0b16 by @blakef)
Fixed
- Fix(react-native): fix codegen failing in a pnpm monorepo setup (a90a17a8b3 by @tido64)
v0.74.5
Fixed
iOS specific
- Pass the right Apple system versions to Hermes (10e9669ad1 by @cipolleschi)
Android specific
- Remove deprecated onTextInput callback (5da40cbb1c by @javache)
v0.74.4
Added
Android specific
- Stub com.facebook.react.settings on 0.74 (13ea273850 by @cortinico)
iOS specific
- Prebuilt version of Hermes for visionOS (924fb3de9b by @okwasniewski)
Fixed
- Don't break script phase and codegen when coreutils installed on macOS (e0799536ef by @blakef)
- Remove setting of process.exitCode that breaks Jest tests (e42932cfc6 by @@douglowder)
iOS specific
- Make sure to pass the RCTBridgeProxy to ViewManagers (d6c90cf7ed by @cipolleschi)
- Implement shared atomic counters and replace static integers in
RCTImageLoader
andRCTNetworkTask
that were accessed concurrently, which in some cases lead to data races. (ffc16fc18b by @hakonk) - Do not use temporary node when creating the .xcode.env.local (8408b8bc96 by @cipolleschi)
- Building of iOS project when RCTAppDelegate is used in the project (be93092c1b by @nikhiltekwani09)
- Fix error on handling privacy manifest (e39e9c4a60 by @cxa)
v0.74.3
Added
- Add the ReactMarkerConstants.CONTENT_APPEARED support on Android in bridgeless mode. (3c4d7618f0 by @Kudo)
Changed
- Feat: update CLI to 13.6.9 (d1e2a35061 by @szymonrybczak)
iOS specific
Fixed
- Codegen computes output path relative to project root instead of current working directory. (d3e0430dea by @dmytrorykun)
Android specific
- Android native rejections should be instanceof Error (f4b0fcb9 by huzhanbo1996)
- Tentative fix for NPE
JavaTimerManager$IdleCallbackRunnable.cancel
(988bf162a0 by @cortinico)
iOS specific
- Fixed Multiline TextInput with a fixed height scrolls to the bottom when changing AttributedText (e210c7c5 by @fabOnReact)
- Fixed border being drawn over children when no color was set (a2b52af3 by @j-piasecki)
v0.74.2
Changed
- Updated
typescript-eslint
monorepo tov7
(91d725136e by @huntie) - Upgrade CLI to
13.6.8
(335f6ed833 by @szymonrybczak)
Fixed
- Warn only in
init
command when CLI uses cachednpx
version (b98c5b960c by @szymonrybczak) selection
prop inTextInput
was not being applied at component creation (be09d12667 by @alanleedev)
Android specific
- Fixed dangling
mAttachedSurfaces
afterReactHost.destroy()
(c70d791036 by @Kudo) - ReactSoftExceptions in ReactHostImpl only when Context is null (ac3261ff60 by @arushikesarwani94)
iOS specific
- Privacy Manifest aggregation failing due to no
NSPrivacyAccessedAPITypes
key (fc4e099920 by @renchap) - In privacy manifest post install script, handle the case where the file reference doesn't have a path (4ad65ac59a by @robertying)
- Fixed an issue where the
selectionColor
prop was not being applied on theTextInput
component. (2bde626a9f by @robinshin)
0.74.1
Added
iOS Specific
- Implement privacy manifest aggregation (4be1fafec8 by @aleqsio)
Changed
- Align debugger Chrome launch flags with Meta-internal version (93956e267c by @motiz88)
- Update "Open Debugger" to print extended Flipper guidance (261a58761c by @huntie)
- Enable event loop by default when bridgeless is enabled (b440672468 by @rubennorte)
- Upgrade
@react-native-community/cli
to 13.6.6 (58b1f9b2d4 by @szymonrybczak)
Android specific
- Support more stubbed methods in
BridgelessCatalystInstance
(cc1c69799e by @javache)
Fixed
- Reset animation state in TouchableOpacity and TouchableBounce (165cabb21f by @sammy-SChttps://github.com/@sammy-)
- Add missing struct member initialization in Props.h (13739510fb by @alanleedev)
Android Specific
- Split scheduler commit and flush delegate methods (ff4b20e823 by @javache)
- Fixing exposing ReactDelegate through ReactActivity for reload (7a841dbcd1 by @arushikesarwani94)
- Fix ReactActivity.getReactDelegate().reload() (56631cd471 by @kudo)
iOS Specific
- Fix Symbol not found: (_JSGlobalContextSetInspectable) which crashed iOS <16.4 with JSC (0a4d97362f by @cipolleschi)
- Fallback to the first foregroundInactive window when there are no
foregroundActive
windows in RCTKeyWindow (eaaf865449 by @cipolleschi) - Fix enable hermes debugger in Bridgeless mode (3467f2f3a3 by @Cipolleschi)
- Maintain correct content offset when scroll view is suspended (305249f964 by @sammy-SChttps://github.com/@sammy-)
- Avoid calling abstract methods in RCTComposedViewRegistry (59e7ed5038 by @cipolleschi)
- Honor requiresMainQueueSetup in bridgeless mode for ViewManagers (8813061286 by @cipolleschi)
0.74.0
Breaking
- OnLayout event batching changes (57e49b584d by @sammy-SC)
- Delete traitCast and identifier traits (1170a68755 by @NickGerleman)
- Remove static-behaves-like-relative errata (56b9b990de by @joevilches)
- Make
start/end
in styles always refer to writing direction (e859f6c773 by @NickGerleman) - Remove APIs for reporting bundle download status to inspector-proxy, which does not use this information. (cfa02eec50 by @motiz88)
- Delete
configFilename
andconfigKey
arguments from iOS codegen CLI. Now we always expect them to bepackage.json
andcodegenConfig
respectively. (33a44e68fc by @dmytrorykun) - Add errata for fix to marginStart/End for row-reverse flex direction (2dad663c28 by @joevilches)
- Remove web performance logging from GlobalPerformanceLogger (53a2742e13 by @rshest)
- Rename AbsolutePositioning errata (08eb985c33 by @joevilches)
- Refactor React to get rid of JSIModule and its dependencies (6555205539 by @arushikesarwani94)
- Get rid of old APIs in FabricUIManagerProvider (c2c346ccaf by @arushikesarwani94)
Android specific
- Make bridgeless the default when the New Arch is enabled (fe337f25be by @cipolleschi)
- Codegen: mapping for numeric types is changed for Android native modules.
Float
->float
;Int32
->int
. (ccd3b04770 by @dmytrorykun) - Delete ReactInstancePackage (7141c475bf by @mdvacca)
- Delete deprecated method LazyReactPackage.getReactModuleInfoProviderViaReflection (118e651bc2 by @mdvacca)
- Reduce visibility of CoreModulesPackage class (30b9b01e68 by @mdvacca)
- Reducing visibility of DebugCorePackage (5ad4bdbad8 by @mdvacca)
- Mark NativeModule.onCatalystInstanceDestroy() method as deprecated in new architecture (b13ea1786f by @mdvacca)
- Deprecate CompositeReactPackage from RN Android (294c0fa208 by @mdvacca)
- Remove support for Android API < 23 in ReactViewManager (cb46f4cff8 by @mdvacca)
- Remove support for Android API < 23 in ReactDrawableHelper (120aab2e99 by @mdvacca)
- Remove support for Android API < 23 in ReactTextInputShadowNode (dc3fc16ce5 by @mdvacca)
- Remove support for Android API < 23 in ReactTextInputLocalData (b968cb6f97 by @mdvacca)
- Remove support for Android API < 23 in TextLayoutManagerMapBuffer (c35dcb3c04 by @mdvacca)
- Remove support for Android API < 23 in TextLayoutManager (4a563f30d2 by @mdvacca)
- Remove support for Android API < 23 in TextAttributeProps (9454587316 by @mdvacca)
- Remove support for Android API < 23 in ReactTextView (31e16ee90c by @mdvacca)
- Remove support for Android API < 23 in ReactTextShadowNode (07e885232b by @mdvacca)
- Remove support for Android API < 23 in ReactTextAnchorViewManager (b138a4f72d by @mdvacca)
- Remove support for Android API < 23 in ReactBaseTextShadowNode (0505f5c28c by @mdvacca)
- Remove support for Android API < 23 in StatusBarModule (6eb4f1e997 by @mdvacca)
- Remove support for Android API < 23 in PermissionsModule (0384e3cf1f by @mdvacca)
- Remove support for Android API < 23 in RequestBodyUtil (52ec1d87e9 by @mdvacca)
- Remove support for Android API < 23 in WindowOverlayCompat (c359a44676 by @mdvacca)
- Remove support for Android API < 23 in DebugOverlayController (2286c123b7 by @mdvacca)
- Remove support for Android API < 23 in ReactFragment (414b25b125 by @mdvacca)
- Remove support for Android API < 23 in (3664b8aa22 by @mdvacca)
- Increase min sdk version of RN Android to 23 (70fcb1ebf6 by @mdvacca)
- Rename onCatalystInstanceDestroy -> invalidate (5f215cdde2 by @mdvacca)
- Implement
getJSCallInvokerHolder()
for Bridgeless Catalyst Instance (c6076bca97 by @arushikesarwani94) - Implement
onKeyLongPress
in Bridgeless (f345fcf3e8 by @arushikesarwani94) - Implement
onKeyDown
in Bridgeless (b14f7d58e3 by @arushikesarwani94) - Implement
onConfigurationChanged
in Bridgeless (b2e1db0fbf by @arushikesarwani94) - Implement
onNewIntent
in Bridgeless (5d711f83b5 by @arushikesarwani94) - Implement
onWindowFocusChange
in Bridgeless (7b40c8ee5f by @arushikesarwani94)
iOS specific
- Removing unused
handler
param on PushNotificationIOS.removeEventListener (fdf4ec3297) - Make bridgeless the default when the New Arch is enabled (c91af773fa by @cipolleschi)
- CocoaPods: remove the
ios_folder
argument from theuse_react_native
function. (be0c353e18 by @dmytrorykun) - Codegen: mapping for numeric types is changed for Objective-C native modules.
Float
->float
;Int32
->NSInteger
. (5aa425c086 by @dmytrorykun) - Defining external codegen targets in
react-native.config.js
is not supported anymore. Define them as normal dependencies inpackage.json
. (ca39a11b27 by @dmytrorykun) - Delete configFileDir CLI argument. (8a62d6135f by @dmytrorykun)
- (072a2006e0 by @philIip)
- Remove some usages of RCT_NEW_ARCH_ENABLED. The change should be transparent BUT some Swift libraries might get broken by this change. (951efc8ce2 by @cipolleschi)
- You cannot call methodQueue on RCTHTTPRequestHandler (7503dbd784 by @philIip)
- RepeatInterval is deprecated in PushNotificationIOS. Use fireDate and the new fireIntervalSeconds. (a1299938a9)
- AlertAction is deprecated in PushNotificationIOS. getScheduledLocalNotifications now uses new iOS APIs which do not expose this property. (9f4d66d283)
- Make TextInput.onContentSizeChange a direct event (744fb4a0d2 by @sammy-SC)
- Remove the Flipper integration (899e7cdb55 by @cipolleschi)
- Deleted the no-op didRegisterUserNotificationSettings: callback in RCTPushNotificationManager (3bea8e1bd4)
Added
- Experimental macro to autolink C++ turbomodules (01d704dd45 by @philIip)
- Added a folder inside the
exclude
array insidetsconfig
(40bb425f48 by @bartlomein) - Gradle plugin for resolving node_modules packages. (8456ccad78 by @robhogan)
- Added missing typings for fontVariant style prop. (8fca1c5854 by @ankit-tailor)
- Added missing typings for fontWeight style prop. (fb5f79ceb5 by @ankit-tailor)
- Enable setNativeProps in animations in the New Architecture (a5aed1294f by @sammy-SC)
- Fix flooring of border (e27452a670 by @NickGerleman)
- Add Yarn files to
.gitignore
in template (965f2eb1fb by @szymonrybczak) - Fix missing assignment in Node move constructor (90df90efca by @NickGerleman)
- Introduce "npx react-native codegen" command. (a612053510 by @dmytrorykun)
- Introduce the "platform" option to generate-codegen-artifacts.js (7b10609276 by @dmytrorykun)
- Introduce "headerPrefix" codegen option. (dae4a11e90 by @dmytrorykun)
- Introduce "codegenConfig.includesGeneratedCode" property. (21784e2ce5 by @dmytrorykun)
- Introduce "outputDir" property of "codegenConfig" (d45a01d6d1 by @dmytrorykun)
- Fix issues with aligning absolute nodes (31005b7fd9 by @joevilches)
- Fix bug with align start not taking into account parent padding (ea3dd6b4f2 by @joevilches)
- Fix issue where percentages were off of the border box, not padding box (e826d1c336 by @joevilches)
- New file for layout methods related to absolute children (0cc09f207f by @joevilches)
- Fix issue where start/end would not be respected in flex edge getters (aa31c6cd75 by @joevilches)
- Added JSI method for reporting native memory to the GC. (cfe129c832 by @neildhar)
- Allowing
cursorColor
andselectionHandleColor
to overrideselectionColor
on Android (1e68e48534 by @jakex7) - Introduce APIs for FabricUIManager (16fb64a9ef)
- Missing typings for the props
tabIndex
for View anduserSelect
in the Text props were added. (b36505bf06 by @wootsbot) - Turbo Modules Promise-returning functions reject with JS and platform stack traces information (7612e6601a by @krystofwoldrich)
- Bindings for
alignContent: "space-evenly"
(c9d0a006fd by @NickGerleman) - Support "align-content: space-evenly" (d66ab59570 by @nicoburns)
- Rename ambiguous leading/trailingEdge functions (594b586c7d by @joevilches)
- JSC support for the NativeState API in JSI (7b7f128968 by @javache)
- Fixed issue with first line element gap handling. (c7c7831ec6 by @jlmip)
- Add onPress prop to TextInput (8e36cc0293)
- Cxx TurboModules > Add example to return a JS function from Cxx to JS (9320174df4 by @christophpurrer)
- Adding getFabricUIManager() APIs to ReactContext (f941f939bf)
- Warn with future command when using
npx react-native init
(a6397afb7f by @byCedric) - Add inspector proxy
nativeNetworkInspection
target capability flag (f3ce7cd76e by @byCedric) - Add inspector proxy device message middleware API (3f41fb5d5b by @byCedric)
- Fallback to query parameter based
user-agent
when header is unset (c62be78d99 by @byCedric) - Added @types/react as an optional peerDependency (dbf8e3f5ba by @acoates-ms)
- Implement
getJavaScriptContextHolder()
for Bridgeless Catalyst Instance (b72f5e9982 by @arushikesarwani94) - Implement
getRuntimeExecutor()
for Bridgeless Catalyst Instance (6a5aaad9e0 by @arushikesarwani94)
Android specific
- (315be8290d by @philIip)
- Introduce native api to access RuntimeExecutor (d7dce975f9 by @philIip)
- Added
onUserLeaveHint
support intoReactActivityDelegate
(3b6c522942 by @behenate) - Introduce PopupMenuAndroid to replace UIManager.showPopupMenu() (35308a73a5 by @RSNara)
- Added
removeAllViews
to IViewGroupManager. (3cd85dc933 by @javache) - The public API of Modal has changed. We don't have anymore a NativeModalManger turbomodule; RCTModalHostViewNtiveComponent's Prop does not require to pass an identifier anymore. (314cfa8c91 by @bernhardoj)
- Fix static view config not to filter out "onClick" events on Android (342041e9ee by @rshest)
- ReactChoreographer can now use an implementation substitution instead of relying on android.view.Choreographer directly. (37e509f2b6 by @nlutsenko)
- ReactChoreographer can now use an implementation substitution instead of relying on android.view.Choreographer directly. (751f7e97ba by @nlutsenko)
- Expose ReactDelegate in ReactActivity (62ebe557b8 by @arushikesarwani94)
- Support reload() in ReactDelegate (d97741af60 by @arushikesarwani94)
- Implement multiple view manager lookup for the interop layer (15a5638c62 by @gabrieldonadel)
- Copy boost headers needed by
rrc_text
andrrc_textinput
(ad9f0b0ab8 by @j-piasecki)
iOS specific
- Add error message if codegen has not run properly (10edb9f545 by @cipolleschi)
- (16276ce0f6 by @philIip)
- Allow libraries to provide module which conforms to protocols meant to be extension points. (46d7f8a669 by @cipolleschi)
- Add nullable annotations to RCTBundleURLProvider (12e4a5745d by @okwasniewski)
- Remove unused getHeight method from StatusBar (3dfedbc1ae by @okwasniewski)
- Introduce native api to access RuntimeExecutor (343a0d3cd8 by @philIip)
- Make codegen take OOT Apple platforms into account (ebb2b9c3fc by @okwasniewski)
- Introduce
vision
interfaceIdiom (258d8e51b4 by @okwasniewski) - Provide better Swift types for RCTAppDelegate and RCTBridgeDelegate (a7c5c2821c by @okwasniewski)
- Add
shouldBeRecycled
method oniOS
. (613a5a7597 by @WoLewicki) - Added the
RCTIsNewArchEnabled()
to check whether the New Arch is enabled at runtime. (f1a7f08feb by @cipolleschi) - Added the customiseRootView method which is called in both bridge and bridgeless. Added also a warning for 0.74 with instructions on how to migrate. (db9c9eacac by @cipolleschi)
- Added better support for
ccache
, to speed up subsequent builds of native code. After installingccache
and runningpod install
, the Xcode project is injected with compiler and linker build settings pointing scripts that loads a default Ccache configuration and invokes theccache
executable. (e85d51c6f1 by @kraenhansen) - Add use of the
REACT_NATIVE_PATH
in the "Bundle React Native code and images" shell script build phase. This will help apps initialized into a mono-repo which hoists thereact-native
package. (289e78388a by @kraenhansen) - Support "highlighting updates when components render" feature from React DevTools (758e59f1d9 by @hoxyq)
- (e9ecc65652 by @philIip)
- Make build-hermes-xcode.sh more extensible for out-of-tree platforms (7bcfd02a60 by @okwasniewski)
- Add console.log notification in DevTools if app transitions between back/foreground. (05967e471e by @blakef)
- Add TypeScript typings for the
dismissActionSheet
function inActionSheetIOS
. (89c7be890b by @LRNZ09) - Add support for
Platform.isMacCatalyst
(027d520d65 by @jacobp100) - Warn users during "pod install" if XCode is too old (1021448d7c by @NickGerleman)
- Allow the activityIndicator to be controlled from JS in bridgeless mode (9aeb9f2f94 by @cipolleschi)
- Implement cursor style prop (73664f576a by @Saadnajmi)
- Add privacy manifest to pod install (d39712f54a by @philIip)
- Add privacy manifest to hello world template (520d120375 by @philIip)
Changed
- Upgrade
@react-native-community/cli
to 13.6.4 (4f50089da2 by @szymonrybczak)
iOS specific
- Bump CLI to 13.6.0 (c99d96b7a1 by @szymonrybczak)
- CodegenNativeComponent show warning and not error if not code generated at build time. (de5619ed8c by @dmytrorykun)
- Make template's .gitignore file universal for OOT platforms (c5f48ac612 by @okwasniewski)
- Sync React renderers to 18.3.0-canary-03d6f7cf0-20240209 (3272b05c3d by @sammy-SC)
- React@18.3.0-canary-b2d637128-20240123 (29df29f5e2 by @sammy-SC)
- Changed community cli plugin homepage url. (6f7e8e17e2 by @hoonjoo-park)
- Bump CLI to 13.5.1 (78967b33c0 by @szymonrybczak)
- Update API docs for scrollEventThrottle (3ea0598341 by @NickGerleman)
- Updated Pressability/usePressability Docblocks (0fd7bd3a7f by @yungsters)
- Bump folly version to 2024.01.01.00 (cfeb43eaa2 by @Kudo)
- Update monorepo dependency versions to remove ^ (6e5bc33b3c by @lunaleaps)
- Be explicit about what monorepo versions we are using (b5e08e80d9 by @lunaleaps)
- Bump CLI to v13.0.0 (6e88d67b8c by @thymikee)
- Fix issue where we were not applying flex end correctly when justifying (579ef2b3fb by @joevilches)
- Use
hermes-parser
instead offlow-parser
to parse Flow Codegen specs. (5abaf388cd by @motiz88) - Fix issue where absolute children of row-reverse containers would inset on the wrong side (9847bcab51 by @joevilches)
- Upgrade CLI to v12.0.0 (d077239fff by @szymonrybczak)
- Apply Babel arrow transform only on non-Hermes (9a3b75c782 by @gaearon)
- Update Metro to ^v0.80.0, stop pinning to an exact version (7853b06929 by @robhogan)
- Use ImageRequireSource instead of number for the defaultSource prop typing of the Image component (2be1c71cb7 by @ellouzeskandercs)
- Gate new debugger frontend behind
--experimental-debugger
flag, restore Flipper as base launch flow (9e068ac163 by @huntie) - Make layout events top-down on Android classic renderer (25478321f9 by @NickGerleman)
- UIManagerModule: Make reactTags required (fafd00ab1a by @RSNara)
- Make ImageManager implementation overridable (ac1cdaa716 by @rshest)
- Share ImageRequest implementation across the platforms (7625a50296 by @rshest)
- Support for (de)serializing config values (e1afa023aa by @joevilches)
- Fix mismatched cases of inlineStart/End and flexStart/End (64d81905ac by @joevilches)
- Replace CompactValue with StyleValueHandle and StyleValuePool (92b889b89e by @NickGerleman)
- Simplify Edge Resolution (40c4552d02 by @NickGerleman)
- Make position static behave like position static (475036d2cd by @joevilches)
- Make positionAbsoluteChild the sole place that matters when determining absolute node's position (6025d50925 by @joevilches)
- Introduce positionAbsoluteChild (7459529ee4 by @joevilches)
- Use containing block to adjust absolute child position (a48e0d590e by @joevilches)
- Allow the containing block to set trailing position of absolute descendants (43ab5fe38c by @joevilches)
- Let containing blocks layout their absolute descendants, not parents (33d6a59bea by @joevilches)
- Insets no longer apply to statically positioned nodes (e48da2aff3 by @joevilches)
- Change default back to
position: "relative"
(88a55baeaa by @NickGerleman) - Remove NumericBitfield (9078db77a9 by @NickGerleman)
- Introduce isDefined() and remove cases of !isUndefined() (3b13d3c7d0 by @joevilches)
- Simplify getting padding + border for cross axis in algorithm (1984bcc0c1 by @joevilches)
- Add errata supporting changes to position: static (60297d50dc by @joevilches)
- Fix issue where position insets were not working with row reverse (25575e57cb by @joevilches)
- Build with MSVC /W4 (8eb0617d95 by @NickGerleman)
- Rename ambiguous getLeading/Trailing... functions in Node.cpp (ef32905172 by @joevilches)
- FloatOptional GCC build fix and more constexpr (5e5019c723 by @NickGerleman)
- Make all annotation processors derive from ProcessorBase (fea445ee2d by @ianlevesque)
- Remove usage of Gutters arrays and YGGutter as index (4da0d44e55 by @NickGerleman)
- Rename BUILD_FROM_SOURCE to RCT_BUILD_HERMES_FROM_SOURCE (f7644be6d4 by @cipolleschi)
Android specific
- Kotlin to 1.9.22 (3c2b2b181c by @cortinico)
- Android NDK to 26.1 (5f75e9b90d by @cortinico)
- Fix "Show Perf Monitor" crash in Catalyst (6f115110c4)
- Fix dev menu not open for Bridgeless (e4887a587a)
- NetworkingModuleTest.java -> NetworkingModuleTest.kt (852f2b1758 by @KrzysztofMoch)
- Integrate binary-compatibility-validator into RN Android build system (e9b80971c7 by @mdvacca)
- Use null to signal a missing TurboModule instead of IllegalArgumentException. (228193dad5 by @javache)
- Fix backward compatibility breakage (1891d9e647 by @mdvacca)
- Continuation of PR: 36263 (a337f6eda7 by @ricku44)
- Bridgeless: Add support for legacy UIManager in UIManagerHelper (10c3292694)
- Fall back to eager view manage loading for Bridgeless (6b3289bc73)
- Ensure namespace is specified for all the 3rd party libraries (13ae11152a by @gabrieldonadel)
- Fix RNTester not showing Redbox when Metro is not connected (b67bc3ffd3)
- Deprecate CompositeReactPackageTurboModuleManagerDelegate (6f11334c42 by @mdvacca)
- Enable fast refresh banner for Bridgeless (66fbab2586)
- Add DoNotStripAny to JSTimerExecutor (56683b0c77)
- Enabling Explicit API warning, this will be changed as Strict in a future version (490b51c7c3 by @mdvacca)
- Add Add ExceptionsManagerModule to CoreReactPackage (4d70337fb5)
- Reducing visibility of FrescoBasedReactTextInlineImageSpan (be1c3cb3ca by @mdvacca)
- Reducing visibility of FrescoBasedReactTextInlineImageShadowNode (f158939efa by @mdvacca)
- Reducing visibility of RefreshEvent (e96cbcc4dc by @mdvacca)
- Reducing visibility of VelocityHelper (05064dc660 by @mdvacca)
- Reducing visibility of ReactScrollViewAccessibilityDelegate (a81481cb0c by @mdvacca)
- Reducing visibility of MaintainVisibleScrollPositionHelper (88a4be378f by @mdvacca)
- Reducing visibility of ScaleTypeStartInside (0d0e0e1b53 by @mdvacca)
- Reducing visibility of ReactImageDownloadListener (9582f98099 by @mdvacca)
- Reducing visibility of ReactEventEmitter (fa1a29bdc0 by @mdvacca)
- Reducing visibility of YogaNodePool (aa4490df11 by @mdvacca)
- Reducing visibility of ViewHierarchyDumper (0316f8d117 by @mdvacca)
- Reducing visibility of ShadowNodeRegistry (e2aae65dd4 by @mdvacca)
- Reducing visibility of NoSuchNativeViewException (4f6a74438d by @mdvacca)
- Bump Gradle to 8.4 (81213f6524 by @cortinico)
- Bump AGP to 8.1.2 (22388fe938 by @cortinico)
- Reducing visibility of UnobservedTaskException (f4023129be by @mdvacca)
- Reducing visibility of ExecutorException (9d3fa2715d by @mdvacca)
- Reducing visibility of Capture (456335a7eb by @mdvacca)
- Reducing visibility of CancellationTokenRegistration (22a3aeafcf by @mdvacca)
- Reducing visibility of AggregateException (2c5d976000 by @mdvacca)
- Reducing visibility of ProgressiveStringDecoder (8c862f6cc4 by @mdvacca)
- Reducing visibility of ProgressRequestBody (4240eb06ab by @mdvacca)
- Reducing visibility of HeaderUtil (fd57f669ff by @mdvacca)
- Reducing visibility of CountingOutputStream (c5c6954596 by @mdvacca)
- Reducing visibility of DidJSUpdateUiDuringFrameDetector (366bcef631 by @mdvacca)
- Reducing visibility of AnimationsDebugModule (9c8ba251a1 by @mdvacca)
- Reducing visibility of NoRetryPolicy (26c5cba6a9 by @mdvacca)
- Reducing visibility of SendAccessibilityEvent (90436bb3f8 by @mdvacca)
- Reducing visibility of ViewHierarchyUtil (6464acab36 by @mdvacca)
- Reducing visibility of RedBoxDialogSurfaceDelegate (3e594ea3dc by @mdvacca)
- Reducing visibility of MultipartStreamReader (b8cded3df6 by @mdvacca)
- Reducing visibility of LogBoxDialogSurfaceDelegate (f46bc717cd by @mdvacca)
- Reducing visibility of LogBoxDialog (c9417ff5f4 by @mdvacca)
- Reducing visibility of FpsView (55d0ac6ab3 by @mdvacca)
- Reducing visibility of UIManagerProvider (0939908f67 by @mdvacca)
- Use NDK 26 (9ce7b56413 by @NickGerleman)
- Rewrite RNTesterApplication to Kotlin, add AnnotationTarget property. (c4110d0475 by @Mod3rnx)
- Rewrite ReactPropAnnotationSetterTest to Kotlin, (ea88338d75)
- Reducing visibility of PerformanceCounter (614afb5983 by @mdvacca)
- Reducing visibility of NativeArrayInterface (e46372ffa4 by @mdvacca)
- Reducing visibility of NativeArgumentsParseException (970ea5e476 by @mdvacca)
- Reducing visibility of JSInstance (d224816ed1 by @mdvacca)
- Reducing visibility of JSIModuleRegistry. (e3e9b1388f by @mdvacca)
- Reducing visibility of JSIModuleHolder (9ba05493b8 by @mdvacca)
- Reducing visibility of JSCJavaScriptExecutorFactory (11d51fe395 by @mdvacca)
- Reducing visibility of DynamicFromMap (7a5824b416 by @mdvacca)
- Reducing visibility of DynamicFromArray (d6cd496c44 by @mdvacca)
- Reducing visibility of DecayAnimation (5d386b795e by @mdvacca)
- Reducing visibility of AnimatedNodeWithUpdateableConfig (5bbc89e4be by @mdvacca)
- Reducing visibility of AnimatedNodeValueListener (f202d1b44b by @mdvacca)
- Reducing visibility of ReactPackageHelper (7e00f536b3 by @mdvacca)
- Reducing visibility of ReactTextInputKeyPressEvent (c7564c76f3 by @mdvacca)
- Reducing visibility of ReactAndroidHWInputDeviceHelper (93b1dc9633 by @mdvacca)
- Reducing visibility of EagerModuleProvider (78097648d3 by @mdvacca)
- Reducing visibility of CanvasUtil (aad82f5032 by @mdvacca)
- Fully rollout FabricSharedEventPipeline (91fe3b484b by @mdvacca)
- Support grouped focus for switch (06c295c58f by @carmenvkrol)
- Expose
react_render_textlayoutmanager
via prefab. (642b4e5c2c by @tomekzaw) - Expose
rrc_text
via prefab. (1c69100a2b by @tomekzaw) - Expose
rrc_textinput
via prefab. (adc9e5b0fa by @tomekzaw) - Rename
PopupMenuAndroidNativeComponent.js
toPopupMenuAndroidNativeComponent.android.js
(fcabb2ad21 by @cipolleschi)
iOS specific
- Make RCTConvert an Objective-C++ (
.mm
) file in prep for DisplayP3 changes (267ea2661a by @cipolleschi) - Migrated RNTester/AppDelegate to the new notification callback (ccff2bb8d1)
- Add the for the dismissal snapshot only when we need it. (7c4afa1006 by @cipolleschi)
- Use less verbose Auto Layout API for RCTRedBox constraints (b311c3e0a0 by @okwasniewski)
- Refactor
RCTKeyWindow
to be more resilient and work in multi-window apps (782e9eace9 by @okwasniewski) - Add
NDEBUG
flag for Release builds for both architectures (1a0e1741c0 by @tjzel) - ScrollEventThrottle no longer needs to be set for continuous scroll events (10b3e0e868 by @NickGerleman)
scrollEventThrottle
no longer needs to be set for continuous scroll events when using the new architecture. (56b57e2db4 by @NickGerleman)- Update 'cannot calculate shadow efficiently' log message to explicitly say solid background (94c7661206 by @gabrieldonadel)
- Retrieve screen scale from trait collection instead of UIScreen mainScreen (ace81ff7d8 by @okwasniewski)
- Migrate RCTTextView to UIEditMenuInteraction (e08a1973f6 by @okwasniewski)
- Update SocketRocket to 0.7.0 (bab9c839ea by @Saadnajmi)
- Align all pods to 13.4 (c852955e4b by @cipolleschi)
- Rename
RCTRootViewFrameDidChangeNotification
as it's not tracking root view frame changes (625d0ece6d by @Saadnajmi) - Matched behaviour for allowsEdgeAntialiasing to old architecture. (6fb0fbadc0 by @javache)
- Bump SocketRocket to 0.6.1 (8b88883071 by @gabrieldonadel)
- Deterministic onLayout event ordering for iOS Paper (56ddace9c8 by @NickGerleman)
- Rearrange RNComponentViewUpdateMask value (476a323e0d by @zhongwuzw)
- Move
[RCTConvert RCTTransformOrigin:]
out of UIAccessibilityTraits category (c7aa3954e3 by @Saadnajmi) - Remove
<Webkit/Webkit.h>
import inRCTConvert.h
(452bf0ff06 by @Saadnajmi)
Deprecated
- Deprecate BatchedBridge.registerCallableModule. Please use registerCallableModule instead (7f549ec7be by @RSNara)
- Warn when fabric is used without concurrent root (c06807154b by @javache)
- Replace RAIICallbackWrapperDestroyer with AsyncCallback (re-land) (fbd8504cc0 by @javache)
- Deprecated RAIICallbackWrapperDestroyer. Use AsyncCallback instead for safe jsi::Function memory ownership. (8dd89cee1b by @javache)
- Refactor BaseJavaModule and ReactContextBaseJavaModule (5af7b7038c by @mdvacca)
Android specific
- Deprecate UIManager.showPopupMenu, and UIManager.dismissPopupMenu (8a8f74b7b2 by @RSNara)
- Deprecate FabricViewStateManager (4fdc5945b1 by @sammy-SC)
iOS specific
- Un-deprecates
RCTAppSetupPrepareApp
(reverts #41976) (ce3ce1194b by @huntie) - Retrieving initial notification requires UNUserNotificationCenterDelegate setup instead of reading UIApplicationLaunchOptionsLocalNotificationKey (c8ab44cf0b by @philIip)
- Deprecating RCTPushNotificationManager's didReceiveLocalNotification: and didReceiveRemoteNotification: (1b85ed94a1)
- Deprecate
[RCTConvert UIBarStyle:]
(157cb0e02b by @Saadnajmi) - Deprecate
RCTAppSetupPrepareApp
, replaced with C++ overload (7a4950b366 by @huntie) - (a0efa26065 by @philIip)
- (9b1f8a81e9 by @philIip)
- Deprecate RCTGetMultiplierForContentSizeCategory (f174f028cf by @Saadnajmi)
- Deprecate
getSurfacePresenter
andgetModuleRegistry
forsurfacePresenter
and moduleRegistry` props. (c3b0a8f162 by @cipolleschi)
Removed
Fixed
- Fix JSExecutor build error on Windows (1c4ed12370)
- Declare missing peer dependency
react
(62c15bacaa by @jbroma) - Log Codegen supported platforms if any are available (2ca7bec0c2 by @okwasniewski)
- Call onStartReached initially when list is small and
onEndReached
is called (4dcc1d3efb by @janicduplessis) - Fix order of Metro hotkey console messages (635732aa8f by @EdmondChuiHW)
- Fix
react-native config
failing in pnpm setups (8f4f09bf70 by @tido64) - Fix
react-native/community-cli-plugin
is unable to resolve out-of-tree platforms in monorepos (e350859d72 by @tido64) - Add type information for items of FlatList in
onViewableItemsChanged
signature (35f5c3a204 by @miallo) - Update typescript definition of
translateX
&translateX
to be able to use percentage values (b133bf6024 by @retyui) - Fix UIManagerBinding's findNodeAtPoint (62e5980954 by @RSNara)
- Fix issue with debugger not working when device name contain two-byte UTF characters (d16531e8a4 by @kmagiera)
- Inspected elements from React DevTools are now correctly highlighted on a relevant surfaces (9d846f47c2 by @hoxyq)
- Fix
compose-source-maps.js
failing if-o
is not specified when it should output the composed source map (ab192ced69 by @tido64) - Fix remount of header and footer in
SectionList
while transiting between empty and filled state (0c37f8c85c by @MateWW) - Updated docs to match Android 6.0 (API 23) minimum requirement. (192a88d522 by @dcangulo)
- Fix align-content of cross-stretched container (b7eb0c85a2 by @NickGerleman)
- Fix Yoga sizing and alignment issues with multi-line containers (b221265f41 by @NickGerleman)
- Allow source map fetching in the inspector proxy from 127.0.0.1 (46d304a101)
- Message (da3ba74240 by @Spice-Z)
- Lint source files, sort imports, remove unused ones (7d1a98c43b by @okwasniewski)
- Allow Out Of Tree platforms to pass custom resolvers (4ccd6e1242 by @okwasniewski)
- Update AcitvityIndicator spec default value (03a840e0a9 by @zhongwuzw)
- Update pkg/repo names in deprecation messages (fd35c1db28 by @friederbluemle)
- "yogalayout.com" to "yogalayout.dev" (99ebcfd3a9 by @NickGerleman)
- Fix
react-native/codegen
not being able to resolve dependencies in pnpm setups (c58e19e89a by @tido64) - Flow syntax errors in Codegen specs are no longer ignored. (a74765eb0a by @motiz88)
- Add missing
ping()
method intoWebSocket
interface (016b62c549 by @alexzel) - Add detection of logical assignment operators to
react-native-babel-preset
(c90485eb10 by @jonthysell) - Eslint config global vars redefine there is no message tip (a2a219c27e by @rick-ast)
- Fix windows 4018 and 4244 compiler warnings (695a30d6b4 by @TatianaKapos)
- Rollout enableCloseVisibleGapBetweenPaths (285629922c by @javache)
- Move iOS/Android specific prop types appropriate types (755a7dbf56 by @Saadnajmi)
- Add
number | null
toViewProps['hitSlop']
TypeScript type (bc16bc5b01 by @DimitarNestorov) - JS Debugging: Fix inspector-proxy to allow for DevTools requests with query strings (ab81c16b65)
- Normalize-colors should not impose node >= 18 (6f1b8edc7a by @cortinico)
- Fixes type casting warnings that are treated as errors downstream in React Native Windows. (570655d80f by @chiaramooney)
-
- [GENERAL] [FIXED] Updated ESLint version to fix
originalKeywordKind
deprecation error (5de0ddae30 by @mrousavy)
- [GENERAL] [FIXED] Updated ESLint version to fix
- JS debugging: prevent dev server crash when a large CDP payload is returned from the device (d0f750e15d by @motiz88)
- Fix new arch example not render in RNTester (48dcfa1718)
- JS debugging: prevent dev server crash when a large CDP payload is returned from the device (2000acc6c6 by @motiz88)
- Update stale ReactAndroid.api values after CI breakage (a5fbe28c29 by @GijsWeterings)
- Fix issue where we were not centering absolute nodes correctly when justifying (983e784a3e by @joevilches)
- Fix bug where we used border box for size of containing block in a certain case (5b05c79d8c by @joevilches)
- Make runtime reference thread safe on tickleJs call (067c989b48 by @blakef)
- Fix issue where paddingStart and paddingEnd were swapped with row reverse (2bf1a8f4e0 by @joevilches)
- Fix issue where borderStart and borderEnd were swapped with row reverse (24169e28cf by @joevilches)
- Fix issue where marginStart and marginEnd were not working with rowReverse flex direction (53279ba426 by @joevilches)
- Fix style resolution functions returning FloatOptional (72d0fed272 by @NickGerleman)
- Fix handling of negative flex gap (aa65e92121 by @NickGerleman)
- Fix ReactInstanceManager to initialize the UIManager (0f239d3301)
- Fix ReactInstanceManager to add getJSIModule() as an alternate path (e8323781fa)
- Fixing Bridgeless Exception caused by the UIManager changes (5e406ccea0)
- Fix warm start logging for ReactMarker (44109dc2c0)
- Create custom message handler for synthetic page (652c74104a by @byCedric)
- Fix undefined props crash in FlatList (e33767a36d by @dieguezz)
- Correctly keep ES6Proxy for bridgeless mode (c35630998b by @fkgozali)
- Add missing
registerCallableModule
TypeScript definitions (6bc95b2074 by @Kudo) - Allow Inspector proxy to inline source maps on LAN connections (3dee6d31b9 by @byCedric)
- Fix Bridgeless React Context test in OSS (bdca260679 by @arushikesarwani94)
- Fix bug where absolute nodes were not insetted correctly in certain cases (3341ab7cc0 by @joevilches)
Android specific
- Disable the "Open Debugger" item from dev menu if the bundler is disconnected (7afc8b8623 by @EdmondChuiHW)
- Fix linking of local app modules turbomodules (eb619468c1 by @cortinico)
- Fix Reload behavior being different on Bridgeless (85257a993f by @cortinico)
- Fixes Android compile failed. (aefca27c67 by @zhongwuzw)
- Fix delivery of events during initial rendering in new architecture (7b36233ae1 by @mdvacca)
- Restore missing call to
convertRawPropAliases
(5e37c1f219 by @NickGerleman) -
[Android][Fixed] - Fix incorrect measurement of TextInput when new architecture is enabled ([dc2ce9e66e](https://github.com/facebook/react-native/commit/dc2ce9e66e337ef90a179853467dbb8b09b9d24c) by [@mdvacca](https://github.com/mdvacca))
- Make Android respect metro location from shared preferences for the debugger workflow (0ea16fd3f7 by @kmagiera)
- Assert
DefaultComponentsRegistry::registerComponentDescriptorsFromEntryPoint
is set (8474e239df by @tido64) - Fixed unexpected resizing of ReactRootView for dev bundles in brownfield apps (5d68c908f1 by @hoxyq)
- Fix: prevent scroll event in nested scroll when scrollEnabled={false} (c7873b77b8 by @Icehunter)
- Update getDefaultJSExecutorFactory to load Hermes first and fallback to JSC (70a757fc1e by @cortinico)
- Update profiler button to use "Toggle" string. (8bcaed90c1 by @szymonrybczak)
- Typos in
ReactCompoundViewGroup
comments (385473522c by @kkafar) - Fix AndroidTextInputProps Detection of Padding (4016bfbc37 by @NickGerleman)
- Fix type in BlobCollector.h/cpp (c267a0679d by @Sunbreak)
- Fixed an issue where the status bar colors would not match when opening modals (e8d622e9d1)
- Bump Fresco to 3.1.3 (dca81e6172 by @cortinico)
- Fix crash with
java.lang.NoSuchMethodError
for Bridgeless (b22f566104 by @cortinico) - B1fccb05ccb306005dc7616a4eaaa182b0b1deaf bumped fresco version to 3.1.0. (fbc28fa73d by @lafest)
- Ensure that
configureJavaToolChains
is only executed once during configuration (c7d969f31b by @UNIDY2002) - Fix the crash in ReactViewGroup of https://github.com/facebook/react-native/issues/30785 (b9418315e2)
- Handle Crash for onRequestPermissionsResult (925209932a by @chakrihacker)
- Fix instacrash on bridgeless due to calling showMessage on null instance (2f1ecea1cb by @cortinico)
- Allow non-ascii header values on Android and add utf-8 filename fallback in FormData (7c7e9e6571 by @robertying)
- Fix InteropUIBlockListener to support react-native-view-shot on Bridgeless (24a3dade29 by @cortinico)
- Fix Android HorizontalScrollView fling when content length less than ScrollView length (7d180d7127 by @NickGerleman)
- Fixed prefab header paths for
rrc_text
andrrc_textinput
(623bbe6bd6 by @j-piasecki) - Fix build from source for hermes-engine (a1171f79f8 by @cortinico)
- Fix bridgeless configuration to include DebuggingOverlay in react packages (ad9368068a by @hoxyq)
- React-Native-Restart in release (b282e87729 by @arushikesarwani94)
- Do not crash on onJSBundleLoadedFromServer when fast-refreshing on bridgeless mode (44e5bc9e2c by @cortinico)
- Re-enable listing Hermes debugger targets in chrome://inspect, broken in 0.74 RC (4cfac8eea6 by @motiz88)
- Fix registration of ViewManagers in new renderer when not using lazyViewManagers. (fb9872d4fe by @javache)
- NullPointerException is no longer ignored in MessageQueueThreadHandler (5f45700bd0 by @javache)
- Properly handle RR and CMD+M in Bridgeless Mode (e9f66d9c0c by @cortinico)
- Bring back the UNSET constant to TextAttributeProps. (9700540bec by @dmytrorykun)
- Fix bridge mode by constructing ReactDelegate correctly (a25004c86c by @cortinico)
- Fixed possible deadlock in dispatchViewUpdates (b2ca41eef5 by @EvertEt)
iOS specific
- Resolving case sensitivity issue in header file import (d655fee28b by @zhongwuzw)
- Pass the right flags to libraries (5164e83c3b by @cipolleschi)
- Make sure that
addUIBlock
provides a Dictionary-look-alike object that returns the right views when queried. (f61f87c5ef by @cipolleschi) - Perf Monitor option not showing in Bridgeless (209140046b by @okwasniewski)
- Make sure to forward touches to the wrapped component in the InteropLayer. (ab5e2e8099 by @cipolleschi)
- Generate the RCTModulesConformingToProtocolsProvider only once in user space (a3998f8d15 by @cipolleschi)
- Make sure that Modal is dismissed correctly in Paper (4236538cbd by @cipolleschi)
- Fixed support for event name override in component specs. (6974697b04 by @dmytrorykun)
- Make [RCTBridge currentBridge] work in bridgeless mode (f6f461593b by @cipolleschi)
- Initialize the A11yManager in the main queue and when we need it. (dc38988bcc by @cipolleschi)
- Make font resolution work when using specific font name on the new architecture (61774088d7 by @j-piasecki)
- Disable the "Open Debugger" item from dev menu if packager is disconnected (bc3fe0d76d by @EdmondChuiHW)
- Don't add compiler conditionals when no platforms are specified (1ce7bfd8c9 by @okwasniewski)
- Fix TextInput vertical alignment issue when using lineHeight prop on iOS without changing Text baseline (Paper - old arch) (349d5502d0 by @fabOnReact)
- Align the the bundleURL API from
RCTAppDelegate
to template'sAppDelegate
(ebb55a780a by @cipolleschi) - Bring back support for defining external libraries in react-native.config.js (c6c23042a4 by @dmytrorykun)
- Immediately set props of Components that goes through the interop layer (68ae8cd5e9 by @cipolleschi)
- [iOS] Fixes the root view's background color in bridgeless mode (0bbc311c8a by @zhongwuzw)
- Fix retrieving current appearance in multi-window apps (d00d35e872 by @okwasniewski)
- Refactored RCT_handleKeyCommand to avoid concurrency issues (8d710bfaca by @cipolleschi)
- Fixed potential threading issues accessing UIKit from background in RCTAlertManager (8c4979e7a1 by @fkgozali)
- Fixed
DoubleConversion
build error from Swift integration (631b6a12c5 by @Kudo) - IOS Add React-debug to ReactCommon.podspec (ea0e826c28 by @christophpurrer)
- Remove an early return to suppress a deprecated API warning for
UIMenuController
(6801fc3f9b by @Saadnajmi) - Bring the old RCT_NEW_ARCH_ENABLED semantic back for compatibility (3690e4413b by @cipolleschi)
- Fixed archiving for macos catalyst on react-native 0.73.1 in xcode (aa2d613cfa by @kesha-antonov)
- Fix RCTAppSetupPrepareApp.h import error from Objective-C *.m files (de0c43ead4 by @Kudo)
- Fixes
with-environment.sh
script for the case when Node can't be found prior to loading.xcode.env
(c684f9fc62 by @birdofpreyru) - Further cleaned up RCT_USE_HERMES (d50c9068a9 by @fkgozali)
- Fix support for --sourcemap-output path containing spaces (e25a9b4c5d by @JorenVos)
- Move old props and prop diffing to the interop layer adapter (3b80531f32 by @cipolleschi)
- Optimise RCTKeyWindow() calls in RCTForceTouchAvailable method (90fb73e83c by @okwasniewski)
- Fixed strict prototype warning when using the RCT_EXTERN_REMAP_MODULE macro. (746ad378c7 by @dehlen)
- Add safe guard when receive network response data too long (3c4517ffb6 by @zhongwuzw)
- The wrong height result of onContentSizeChange callback (5217cc972a by @zyestin)
- Fix cleanAssetCatalog error (d5114a4b9f by @janicduplessis)
- Fixes ScrollView contentInsetAdjustmentBehavior assignment (86df742e73 by @zhongwuzw)
- Network invalidate handlers to cleanup in turbo module mode (44d6e4310c by @zhongwuzw)
- Move ActionSheet UI operation to main thread (aa9e824a75 by @zhongwuzw)
- Move UIRequiredDeviceCapabilities for RNTester to arm64 (c7bd397dac by @fkgozali)
- Remove duplicated category NSTextStorage+FontScaling (6eef3661bf by @zhongwuzw)
setState
is not working for nested inline views in text (9b33e752c7 by @ehsemloh)- Unbreak Cocoapods build (05d92bf2a5 by @hieu9102002)
setState
is not working properly for text inline image (36ef6460f0 by @ehsemloh)- Fix running timers when the proximity sensor detects close (79eac9666d by @saghul)
- Fixes Dev menu pop up multiple times when Tap command
D
continuously (a257e9f5f0 by @zhongwuzw) - Fix module create dead-lock when start-up (a4a8695cec by @zhongwuzw)
- Adjust RCTRedBox to work for iPad and support orientation changes (e2eb26c951 by @okwasniewski)
- Fix autoscrollToTopThreshold on iOS old arch (9666814750 by @janicduplessis)
- Fix iOS Paper Scroll Event RTL check (c40fc313ca by @NickGerleman)
- View flips horizontally in paper arch on RTL (1d74b38634 by @intergalacticspacehighway)
- Fixed narrowing conversion compilation error. (ed9931f456)
- Fix grammar in Xcode 15 helper method name (fa87eaaebf by @mikehardy)
- Prevent unwanted border animation (5fbdc994f9 by @sammy-SC)
- Adding ccache_clang wrapper scripts to package.json for distribution (1c8751a16a by @CatStudioApp)
- Decouple RCTBridge+Private from jsinspector-modern (49bb2f37f1 by @philIip)
- Properly warn about
createRootViewWithBridge
being deprecated (a1197695fc by @okwasniewski) - Codegen correctly handles react-native.config.js. (f5d5d9d284 by @dmytrorykun)
- Support .tsx, .ts, and .jsx in component stacks (adaf5eba3e by @rickhanlonii)
- RCTRedBox not appearing in Bridgeless when metro is not running (4adef35e97 by @okwasniewski)
- Make sure that the New Architecture listens to orientation change events. (49b0d26d45 by @cipolleschi)
- Avoid to show Metro Loading banner twice. (64ed8200f7 by @cipolleschi)
- Support launchOptions in bridgeless mode. (cb2d93ea50 by @cipolleschi)
- Let RCTHost be initialized with a function to provide the
bundleURL
so that it can connect to metro on Reload when the url changes. (90296be1d4 by @cipolleschi) - Fix: build settings for custom build configuration (bcac3c4d9c by @jblarriviere)
- Remove invalidate observer instead of re-adding observer in DeviceInfo module (91279a822b by @zhongwuzw)
- Add missing fields to native errors in new arch (98b1331609 by @vonovak)
- [0.74] Fix archive for MacOS Catalyst (0e5dc51bba by @cipolleschi)
- Fix RNTester project and remove CCACHE from project when disabled (2b18fdf806 by @cipolleschi)
- Make sure that the Open Debugger appears in bridgeless mode (18916f391a by @cipolleschi)
- Change bridgeless check in dev menu (776f90024f by @zhongwuzw)
Security
iOS specific
- Bump activesupport to minimum 6.1.7.5 CVE-2023-38037. (07a159f279 by @lunaleaps)
v0.73.11
Fixed
Android specific
- Suppress path adjustment when not actually drawing a border (c9cf6d4b60 by @tjzel)
iOS specific
- Stop generating dSYM path in Hermes for the framework (e992405e87 by @cipolleschi)
- Pin Xcodeproj to < 1.26.0 (dfcad7c678 by @cipolleschi)
v0.73.10
Removed
Android specific
- Stop emitting deprecated onTextInput events (e6ad652c6a by @javache)
- RGNP - Remove unnecessary dependency on gradle-tooling-api-builders - serviceOf failure (069d8fc249 by @cortinico)
Fixed
- fix(TypeScript): Allow readonly arrays in transform (b4015c1eaa by @tjzel)
Android specific
- Fix TextInput 'contextMenuHidden' prop (08eed9f093 by @alanleedev)
iOS specific
- Fix
<KeyboardAvoidingView>
with floating keyboard on iPadOS (3c54e1ee45 by @renchap) - Fix the generation of .xcode.env.local (88fb3daa7e by @cipolleschi)
- Fix iOS crash occurring when navigating to a new app screen with a displaying modal (33ca0204f5 by @zhouzh1)
- Fabric: Fixes animations strict weak ordering sorted check failed (f18ed7b6c7 by @zhongwuzw)
v0.73.9
Added
iOS specific
Changed
- Feat: update CLI to 12.3.7 (c7a1f2428f by @szymonrybczak)
Fixed
iOS specific
- Remove invalidate observer instead of re-adding observer in DeviceInfo module (9db3eb6 by @zhongwuzw)
- Fix privacy aggregation (6983a8b by @aleqsio)
- Privacy Manifest aggregation failing due to missing nil check (115331b by @swrobel)
- In privacy manifest post install script, handle the case where the file reference doesn't have a path (86cb45e by @robertying)
- Privacy Manifest aggregation failing due to no
NSPrivacyAccessedAPITypes
key (4bb94fe by @renchap)
v0.73.8
Added
iOS specific
- Added privacy manifest to template (520d120375 by @philIip) (fixed to include the file in the build)
Changed
- Update Hermes version (1d0cbfd01b by @Titozzz)
Fixed
iOS specific
- Add
HERMES_ENABLE_DEBUGGER=1
flag to React-RuntimeApple (794aaa52d3 by @cipolleschi) - Fix Symbol not found: (_JSGlobalContextSetInspectable) (224ac21568 by @cipolleschi)
- Add missing dependency to React-RuntimeHermes podspec (fd48b94319 by @cipolleschi)
v0.73.7
Fixed
Android specific
- Fix possible deadlock in dispatchViewUpdates (b741899f99)
- Fix crash in getChildDrawingOrder (342ce6115b)
- Fix Android HorizontalScrollView fling when content length less than ScrollView length (bd19d0ec6a)
iOS specific
- fix: build settings for custom build configuration (2bcf18812a)
- Fix archiving for Mac Catalyst (a8a2f1a578 by @cipolleschi)
- add privacy manifest to pod install (3ccbd9cd8c)
v0.73.6
Breaking
iOS specific
- Rename
BUILD_FROM_SOURCE
toRCT_BUILD_HERMES_FROM_SOURCE
(51b80477c7 by @cipolleschi)
Fixed
- Fix component stacks for tsx, ts, and jsx files (28f604a97d by @lunaleaps)
iOS specific
- Prevent unwanted border animation(d979491 by @sammy-SC)
- Fix flipper for Xcode 15.3 (9d22a7fd0e by @cipolleschi)
v0.73.5
Security
- Update CLI to 12.3.6 (ffcd8f5249 by @szymonrybczak)
Changed
- Hermes bump (3bdd54a51c by @lunaleaps)
Fixed
- Fix: fix codegen not finding all third-party libraries (67e2bb455f by @tido64)
- Fix compiler flags passed to libraries (929df582c8 by @cipolleschi)
v0.73.4
Fixed
- Fix: cannot find module
react-native-*/Libraries/Core/InitializeCore
(562447be47 by @tido64)
Android
- Ignore the one-time NullPointerException and print error log (ca9b6b5038)
iOS
- Fix warning when loading RCTUIManager and A11yManager (f56bf1fa0a by @cipolleschi)
v0.73.3
Added
iOS specific
- Handle TSAsExpression when looking for the codegen declaration (02957718d7 by @dmytrorykun)
Changed
- Bump CLI to 12.3.2 (bcb229e8f8 by @szymonrybczak)
Android specific
- Call super.onRequestPermissionsResult in ReactActivity's onRequestPermissionsResult() (96ed1190c6 by @LimAlbert)
iOS specific
- Remove ATS config patch from react_native_post_install (41c601e478 by @gabrieldonadel)
Fixed
- Declare missing dependency
chalk
(9155e2d182 by @tido64) - TouchableBounce, TouchableHighlight and TouchableNativeFeedback dropping touches with React 18. (e4708d661b by @sammy-SC)
- TouchableWithoutFeedback and TouchableOpacity dropping touches with React 18. (54166342f0 by @sammy-SC)
iOS specific
- Restrict Cocoapods versions < 1.15. (3869ae4d80 by @blakef)
- Make
RCTDeviceInfo
listen to invalidate events and unregister observers while invalidating the bridge (d46d80d2ef by @cipolleschi) - Fix support for SOURCEMAP_FILE path containing spaces (63e893d23d by @paulschreiber)
- Fix release build error due to a casing issue in hermes tarball path after download prebuilt tarball (2e2f8a6689 by @wfern)
- Fix race condition between A11yManager and UIManager (f39f34ed82 by @cipolleschi)
- Fix symbol not found _jump_fcontext with use_frameworks (a2771ce58a by @cipolleschi)
v0.72.17
Fixed
iOS specific
- Fix Privacy Manifest file path by providing targets (da0f8ac060 by @siddharthkul)
- Handle the case where the file reference doesn't have a path (b5b3f3c43d by @robertying)
v0.72.15
Added
iOS specific
- Add privacy manifest aggregation. (61f584c3af by @aleqsio)
Fixed
iOS specific
- Privacy Manifest aggregation failing due to no
NSPrivacyAccessedAPITypes
key. (fc4e099920 by @renchap)
v0.72.14
Added
iOS specific
- add privacy manifest to hello world template (d357a61ead by @phillip)
Changed
iOS specific
- Bumped hermes to remove Apple's RR API that were unused. Hermes does not requires a PrivacyManifest now (ee14572 by @hurali97)
Fixed
iOS specific
- fix Symbol not found: (_JSGlobalContextSetInspectable) (ae4c62a by @cipolleschi)
v0.72.13
Added
iOS specific
- Add privacy manifest to pod install (d39712f54a by @philIip)
Fixed
Android specific
- Fixed possible deadlock in dispatchViewUpdates (b2ca41eef5 by @EvertEt)
v0.72.12
Changed
- Rename BUILD_FROM_SOURCE to RCT_BUILD_HERMES_FROM_SOURCE (a215805eb7 by @cipolleschi)
iOS specific
- [0.72] Fix flipper for Xcode 15.3 (a316e0154e by @cipolleschi)
Fixed
-
Fix component stacks for tsx, ts, and jsx files (dd311c9782 by @rickhanlonii)
-
Fix flags for new arch (0724c2769a by @cipolleschi)
v0.72.11
Changed
- Upgrade CLI to 11.4.1 (c57a29a08c by @szymonrybczak)
- Update Metro to ^0.76.9, CLI to ^11.4.0 (ddff36f770 by @robhogan)
iOS specific
- Improve Swift support for 3rd party libs (6939021518 by @cipolleschi)
Fixed
- Fix overriding EXCLUDED_ARCHS when installing Hermes on RN v0.72 (a4282a91c3 by @ken0nek)
iOS specific
- Don't allow cocoapods 1.15. (08fd9170fc by @blakef)
v0.72.10
Added
- Unhandled promise rejection - attach non-standard Error object stack info if possible (655b12dbfa by @ospfranco)
Fixed
- Revert the regression of iOS min version and updates Podfile.lock for Releases (1f70f58aa4 by @cipolleschi)
- Fix flags (565281105e by @cipolleschi)
v0.72.9
Fixed
- Fix boost link (d62d714ada by @cipolleschi)
- Fix New Arch build failing with -std=c++20 (b7c1a40db4 by @tido64)
- Fix ruby tests (7c7baad7bd by @cipolleschi)
- Bump Podfile.lock and try to fix Hermes update (34da08755d by @cipolleschi)
v0.73.2
Added
- Unhandled promise rejection - attach non-standard Error object stack info if possible (655b12dbfa by @ospfranco)
Changed
- Bump Metro to ^v0.80.3 (16dff523b0 by @huntie)
- Automatically reconnect to an existing debugger session on relaunching the app (0806ad7854 by @motiz88)
iOS specific
- Update ios pod post_install logic for detecting if hermes is enabled (d6163d7f43 by @gabrieldonadel)
Fixed
- Fix comment about adding packages in android template (ac9b87cd57 by @janicduplessis)
- Fix boost download url (7e721f09ad by @cipolleschi)
iOS specific
- Fix horizontal scrollview scrollTo coordinate space in RTL on oldarch (e809e0aca7 by @NickGerleman)
- enhance IP address retrieval for iOS devices in Metro bundler setup (9f28616650 by @Morritz)
This file contains all changelogs for latest releases, from 0.70.0 onward. Please check out the other CHANGELOG-*.md
files for previous versions.
v0.73.1
Added
- Add
enableNetworkInspector
experiment to enable Network panel and CDP handlers in inspector proxy (8ef807bfb2 by @byCedric)
Changed
- Chore: bump CLI to 12.3.0 (dff11ab993 by @szymonrybczak)
Fixed
- Fix last spacer constrain logic in VirtualizedList (3ed4bf9046 by @janicduplessis)
Android specific
- Fix type for unrecognisable field mBinding (31d8a93bf3 by @piaskowyk)
iOS specific
- Fix NSAppTransportSecurity being overwritten during pod install (a0b76d90b7 by @robertying)
v0.73.0
Breaking
- Bump minimum Node JS version to 18 (2eb25cbdbe)
- Require C++ 20 when including renderer headers (3b5bea01d0 by @NickGerleman)
- Remove included
flow-typed/
directory from thereact-native
package (4540668c15 by @huntie) - per-node
pointScaleFactor
(dce7242ab6 by @NickGerleman) - Remove "UseLegacyStretchBehaviour" functions (c35ff13a58 by @NickGerleman)
- Remove
YGConfigGetInstanceCount
(858173280f by @NickGerleman) - Remove
interpolateProps
functionality fromComponentDescriptor
to fix circular dependency betweenreact/renderer/core
andreact/renderer/components/view
(bae63d492f) - Migrate from native
CallInvoker
toNativeMethodCallInvoker
(b70f186b53 by @RSNara) - Change how we set cmake policy (2b932c3820 by @NickGerleman)
- Add
YGErrata
integration within C ABI (0fd0f56f20 by @NickGerleman) - Set
runtimeConfig
provider for theTemplate
(2de964cfd2 by @dmytrorykun)
Android specific
- Fix:
role="searchbox"
should assign"SearchField"
trait on iOS (2749fbca9a by @mdjastrzebski) - Renamed FabricMountItem.* files to MountItem.* to better match the name of the struct. (49f1237526)
- Deleting
warnOnLegacyNativeModuleSystemUse
(9859fbc2ec by @philIip) - Do not enable
excludeYogaFromRawProps
feature flag, if you need to pass layout props to Java view managers when using new architecture (88e19c0ce6 by @zeyap) - Default to ignoring cached Metro bundle when offline (2d6106055b by @motiz88)
- W3CPointerEvents: change click event from direct to bubbling (61eb9b4453)
- Fix
ReactTextView
setPadding
applying logic error (d8ced6f895 by @jcdhlzq) - Add
view
getter onRCTRootView
/ `RCTFabricSurfaceHostingProxyRootView (33e0521788 by @zoontek) - Remove support for Android API < 23 in ReactEditText (1904e8036a by @mdvacca)
iOS specific
- Metro will no longer be started when running builds via Xcode (dc6845739e by @huntie)
RCTTurboModuleRegistry
is unavailable inRCTRootView
andRCTSurfaceHostingProxyRootView
(268d9edad6 by @philIip)HasBridge
is removed fromRCTRootView
andRCTSurfaceHostingProxyRootView
(57b86f7a87 by @philIip)- Remove
sizeMeasureMode
argument fromRCTSurfaceHostingProxyRootView
constructor (0d83c1a668 by @philIip) - Deleting
RCTFabricSurfaceHostingProxyRootView
(676676c954 by @philIip) - Delete RCT_EXPORT_PRE_REGISTERED_MODULE (8cd5b2a57d by @philIip)
- Replace
RCTLocalAssetImageLoader
withRCTBundleAssetImageLoader
(b675667a47 by @hellohublot) - Add
React-FabricImage
pod. (44af6ca03c by @cipolleschi) - Make
getModuleInstanceFromClass
required (5a7799eead by @philIip) - Make
getModuleClassFromName
required (fbf196dd05 by @philIip) - Remove
openURL
method fromRCTInspectorDevServerHelper
(3ef7de848d by @huntie)
Added
- Enable animating skew in transforms with native driver (645b643f68, 4934cdb403 by @genkikondo)
- Support customization of underlying Touch event representation in out-of-tree platforms (4884322781)
- Support customization of underlying Color representation in out-of-tree platforms (2b688f6031)
- Support lazy bundling in development (799b0f4be8 by @motiz88)
- Fixup hack for flex line size calculation (598b7ed690 by @NickGerleman)
- Added a third parameter "contentType" to method
slice
of classBlob
. (e35ca71bca by @trashcoder) - Added plugins for private methods and properties to
@react-native/babel-preset
. (db4a253c1e by @yungsters) - Add
react-native/typescript-config
(cae52f6cf8 by @NickGerleman) - Better TypeScript support for
package.json
exports field (1b0e8b1de4 by @NickGerleman) - Add the new media permission to typescript (630cf3b21c)
- Added
contentType
parameter to Blob declaration (ff40138c76 by @trashcoder) - Remove
testID
fromTextStyle
types (3273d38d3b by @tobua) - Log a warning if
npx react-native
uses old cached version (bfca23a25d by @blakef) - Recognize dictionary type in codegen (4fd8f405be by @ZihanChen-MSFT)
- Generate events with arrays (b422375782 by @cipolleschi)
- Add generic support for Arrays in Events parsing (6168701887 by @cipolleschi)
- Remove config variant copy ctor from
YGNode
(72fb75d4d4 by @NickGerleman) - Define Flag operators for
YGPrintOptions
(fe6f70b913 by @NickGerleman) - Add YGErrata Enum (c7dcb42b8a by @NickGerleman)
- Cleanup YGNode for explicit per-node config (0e5d54a8ee by @NickGerleman)
- Added customizeStack hook to Metro's
/symbolicate
endpoint to allow custom frame skipping logic on a stack level. (03e78010ae by @GijsWeterings) - Enable TurboModule interop in Bridgeless mode (aa1ad5496c by @RSNara)
- Native view config interop layer enabled in bridgeless mode. (4fbe05577b by @dmytrorykun)
Android specific
- Add
performance.reactNativeStartupTiming.initializeRuntimeStart
andperformance.reactNativeStartupTiming.initializeRuntimeEnd
API (50638714f5, 10e8b3538f) - Transform origin (9e68599daf by @intergalacticspacehighway)
- Websocket Module setCustomClientBuilder (0cdb9e6a52 by @MO-Lewis)
- Remove JNI Binding usage of layoutContext (733c9289a1 by @NickGerleman)
- Added testing shadow helpers for robolectric (4890d50edd by @philIip)
- Android Events - setting default to true to use C++ event pipeline (b816fa7a65 by Jesse Watts-Russell)
iOS specific
- Added support for iOS 17+ text content types (216865cdb7 by @robwalkerco)
- Add support for building with Xcode 15 (10d55888cc by @AlexanderEggers)
- Fixed cursor height on multiline text input (987c6fd298, e1885853ac by @soumyajit4419)
- Added support for
transform-origin
on old arch (5f40f0800e by @jacobp100) - Now it is possible to build Hermes from local source directory. Just set REACT_NATIVE_OVERRIDE_HERMES_DIR to the path to that directory. (45f7e117ad by @dmytrorykun)
- Add all fontVariant values for font-variant-ligatures (f0893cf72f by @finnp)
- Support bridgeless with JSC and frameworks (3965158a2d)
- Add pods for bridgeless (b06c2d7050)
- Added override method with default implementation (abc6e1cbf4 by @Gregoirevda)
- Add
smartInsertDelete
prop toTextInput
component (6b62f12ce9 by @fabioh8010) - Add explicit dependencies for 3rd parties libraries (c027f0a41f by @cipolleschi)
- Added conversion helper for UIInterfaceOrientationMask to RCTConvert (2ab750f7bb)
Changed
- Use new Hermes CDP handler implementation for debugging (3e7a873f2d by @huntie)
- Add 'j' to debug key trigger from CLI (321f7dbcad by @huntie)
- Relax FlatList.onViewableItemsChanged validation (5cfa125b97)
- Don't use setState for disabled KeyboardAvoidingView to avoid re-renders (783150f37b by @adamgrzybowski)
- Add mock removeEventListener and currentState method for
AppState
(1bda78f2fa by @w3cay) - Default condition set for experimental Package Exports is now ['require', 'import', 'react-native'] (808b3c9716 by @huntie)
- Remove default 50ms Scroll Event Throttling in VirtualizedList (3eccc53629 by @NickGerleman)
- Sync AnimatedValue JS node value when animation completes (51cea49be7 by @genkikondo)
- Return animated values to JS for natively driven animations (4b54c0b1fa by @genkikondo)
- Fixed
source
inImage
type (83885f1d69 by @BrodaNoel) - Address errors in viewability thresholds on Virtualized list by Math.floor the top and bottom dimensions of a cell item when determining viewability. (824c1c6d07 by @lunaleaps)
- Change
_onLayout
to update bottom height when frame height is changed (5059ddc5ce by @lyqandy) - Renaming bridgeless to runtime (1547b81ec1)
- Update Metro to ^0.80.0, don't pin to exact version (aed4aed9d5 by @robhogan)
- Bump Jest version in the new project template from
^29.2.1
to^29.6.3
(3c323382fe by @robhogan) - ReactImagePropertyList.java => ReactImagePropertyList.kt (cb60e5c67b by @bufgix)
BaseViewManagerTest.java
=>BaseViewManagerTest.kt
(3660b7cf73 by @retyui)- React-native/babel-plugin-codegen to react-native/babel-preset (1c3b3a09b6 by @dmytrorykun)
- Replace
JSX.Element
withReact.JSX.Element
inApp.tsx
template (1383a59ed2 by @retyui) - Move react-native-babel-transformer and react-native-babel-preset from Metro to React Native repo. (d380bb8473 by @dmytrorykun)
- Stricter TS check for transform style (e414713e4c by @vonovak)
- Bump Flipper to 0.204.0 (d9c8cd3b40 by @szymonrybczak)
- Remove YGExperimentalFeatureFixAbsoluteTrailingColumnMargin (3f6412b934 by @NickGerleman)
- Pressable: prevent click bubbling in Pressable (a449291323)
- Dirty nodes when dynamically setting config (bde38d543e by @NickGerleman)
- Jest globals are now defined using
Object.defineProperties
instead of object property assignment (cf631ad59f by @yungsters) - Support mixed props for events in codegen (b68f53d44f by @genkikondo)
- React-native-codegen: Buck-only: renamed src_prefix kwarg (9193c4f50c by @fkgozali)
- Update CLI to v12.1.1 (3da0959291 by @szymonrybczak)
Android specific
- Convert the app template to Kotlin (c1c22ebacc by @cortinico)
- Upgrade target sdk version to 34 (a6b0984893)
- Bump NDK to 25 (28deaa3a71 by @szymonrybczak)
- Remove Flipper actions in Dev Menu, add new Open Debugger action (3bc402f612 by @huntie)
- Add
scrollEventThrottle
prop support for android (777934ec3a) - Don't display the PopupWindow when current activity is in a bad state (cee5dceac7)
- React trees will be unmounted when the application is reloaded (e133100721 by @javache)
- Fix crash "lateinit property initialProps has not been initialized" (188eceec98)
- Deprecating createNativeModules method from ReactPackage interface recommending using getModule instead in the new architecture of React Native (33181ef8af by @mdvacca)
- Introducing getModule method into ReactPackage interface, defaulting to null. This method will be used in the Stable API of React Native (da8616ec69 by @mdvacca)
- Update Java tests to Kotlin for the referenced file (3dbb759506 by @stewartsum)
- Deprecate JSCJavaScriptExecutorFactory and JSCJavaScriptExecutor, use com.facebook.react.jscexecutor instead (0cac88fa65 by @mdvacca)
- Throw ReactNoCrashSoftException when handle memeory pressure to avoid crash (fa9ea8326e)
- Throw Error in dispatchViewManagerCommand when non-numeric tag is passed for easier debugging (0519c11acd by @hsource)
- Moved ReactFontManager to a common package (7341f9abdc by @fkgozali)
- Throw Error in dispatchViewManagerCommand when non-numeric tag is passed for easier debugging (ff1972daba by @hsource)
- Fresco to 3.0.0 (823839bcc1 by @cortinico)
- Avoid duplicate destroy on same thread (43f7781c87)
- Use new
getCanonicalName
andgetMessage
methods exposed byfbjni
(6c729acd12 by @krystofwoldrich) - Changed the scope of
setJSEngineResolutionAlgorithm
to public from private. Brownfield apps should be able to setup the JSResolutionAlgorithm before hand. (cb376dd0d8 by @SparshaSaha) - Java to 17 and AGP to 8.0.2 (9f7dddf1ac by @cortinico)
- Use reference Yoga CMake Build (6764adafe4 by @NickGerleman)
- Enable Template with Bridgeless (8b2f324a9b)
- Kotlin to 1.8.0 and JDK Toolchain to 11 (74987b6fca by @cortinico)
- Deprecate APIs that are deprecate only on JavaDoc (1be65baf29 by @cortinico)
- Gradle to 8.1 (74f256b6f0 by @cortinico)
- "Open Debugger" is no longer available for remote JS debugging from the Dev Menu (non-Hermes). Please use
NativeDevSettings.setIsDebuggingRemotely()
. (361a944348 by @huntie)
iOS specific
- Remove Flipper actions in Dev Menu, add new Open Debugger action (5bfc507655 by @huntie)
- Moved the min iOS version to 13.4 (610b14e4f3 by @cipolleschi)
- TurboModules are now exposed to JS as the prototype of a plain JS object, so methods can be cached (20dba39dab by @javache)
- Restored
cancelable
option inPressability
configuration to not block native responder, and instead introduced a new optionalblockNativeResponder
boolean option to accomplish the same thing. (30e2345b26 by @yungsters) - Scroll
ScrollView
text fields into view withautomaticallyAdjustsScrollIndicatorInsets
(9ca16605e0 by @adamaveray) - Remove Xcode 15
_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION
workaround for boost (b9f0bdd12d by @Kudo) - Updated comment in RCTBundleURLProvider.h to instance correct jsBundleURLForBundleRoot:fallbackExtension method. (d208dc422c by @JulioCVaz)
- Set the new arch flag based on the React Native version. (a8d268593a by @cipolleschi)
- Add RCTPlatformName to RCTConstants.h (046ae12a6d by @Saadnajmi)
- Use the runtime scheduler in the old Architecture (2692f206a6 by @cipolleschi)
- Set DEFINES_MODULE xcconfig in React-RCTAppDelegate to generate a module map for this pod (7c79e3107f by @tsapeta)
- Move .m to .mm to make obj-c and C++ headers compatible (42d67452eb)
- Remove deprecated uses of UIActivityIndicatorViewStyle (62e9faefd5 by @Saadnajmi)
- Fix setRuntimeConfigProvider called multiple times error (637ffb175d)
- Set initial AppState status to "inactive" instead of "unknown" (54a5ff9745 by @louiszawadzki)
- Return animated values to JS for natively driven animations (b0485bed09 by @genkikondo)
- Disabled bitcode for Hermes prebuilts (de6bfec82a by @cipolleschi)
- Make RNTester use RCTAppDelegate (680cbe757b by @cipolleschi)
- Changed AppDelegate template to avoid retaining TurboModuleManager. (ec1ab73674 by @javache)
- Migrate RNTester to Bridgeless (d3c28d28a9)
- Re-organise BridgelessApple files to keep proper header file include structure (736dd5a3c0)
Deprecated
- Deprecate YGConfigSetUseLegacyStretchBehaviour (7f300cd755 by @NickGerleman)
Android specific
- Deprecate hasConstants from ReactModule annotation (ccfd4c080c by @philIip)
- ReactModuleInfo constructor with getConstants arg is deprecated (9f52378cc1 by @philIip)
- HasConstants in ReactModuleInfo is marked as deprecated (196d9f9520 by @philIip)
- Deprecating EventBeatManager constructor that receives a Context as a parameter. (363224ea62 by @mdvacca)
- Deprecate and mark for removal com.facebook.react.common.StandardCharsets, please use java.nio.charset.StandardCharsets instead (c0b4883058 by @mdvacca)
- (a4fe9b2b6d by @philIip)
- Deprecate TurboModuleManager.getLegacyCxxModule (7a08fbb088 by @RSNara)
- Deprecate TurboModuleRegistry.getModule(), getModules(), hasModule(), (3af66bf7fb by @RSNara)
iOS specific
- Deprecate
get_default_flags
in Ruby scripts (f60b9f695e by @cipolleschi) - Use -[RCTTurboModuleManager installJSBindings:] instead of -[RCTTurboModuleManager installJSBindingWithRuntimeExecutor:] (7fb9e4f46c by @javache)
Removed
- Remove remote debugging from the dev menu (28e1ca9873 by @gabrieldonadel)
- Remove experimental support for loading bytecode from Metro (6abc097bf3 by @motiz88)
- Remove internal DevSplitBundleLoader native module (6dcdb93ec0 by @motiz88)
Android specific
- Remove unused
canLoadFile
function from HermesExecutor.java (1b7e26cccb by @cortinico) - Polish DevServerHelper (remove unused Interfaces) (7dcaf00835 by @cortinico)
- DevServerHelper should not depend on internal ctor parameter (da358d0ec7 by @cortinico)
- Deprecate Java YogaConfig.setUseLegacyStretchBehaviour() (f635341461 by @NickGerleman)
- Remove TurboModuleManagerDelegate.getLegacyCxxModule (6f10110555 by @RSNara)
- Remove TurboModuleManager.getNativeModule,getNativeModules,hasNativeModule (ac2a4d8e6c by @RSNara)
- Delete hasConstants() method from BaseJavaModule (bbc3657ff4 by @mdvacca)
- Deleted obsolete native methods DevServerHelper.symbolicateStackTrace and DevServerHelper.openStackFrameCall (ad46bc6d77 by @GijsWeterings)
- Reduce visibility of DevInternalSettings class (1a9e444b61 by @cortinico)
iOS specific
- Remove redundant ifdefs for ArrayBuffer backwards compatibility (fb30fcaa2f by @Saadnajmi)
- Remove RCTSurfaceHostingComponent and RCTSurfaceBackedComponent, needed only for ComponentKit integration. (b8d60a834f by @constantine-fry)
- Remove PRODUCTION flag from iOS build logic (daa99fe5e7 by @cipolleschi)
- Delete bridge.loadAndExecuteSplitBundleURL (e2d512a1ee by @RSNara)
- delete RCTJSScriptLoaderModule (438f6cf591 by @philIip)
- Remove Xcode 12.5 post install workaround (0ab8b40fd6 by @Saadnajmi)
Fixed
- Fix virtualization logic with horizontal RTL lists (8b39bfadbb by @NickGerleman)
- Fix a potential bug in
EventEmitter
when used with certain Babel configurations that incorrectly polyfill the spread operator for iterables. (8b768f144a by @yungsters) - Remove need for platform overrides in SafeAreaView.js (80f531f9f4 by @christophpurrer)
- Hide Babel helpers and other core files from LogBox stack traces by default (af73a75c21 by @motiz88)
- Mitigate flickering on color animations (5f8bbf2bd2 by @genkikondo)
- Resolves Animated.Value.interpolate results in NaN when output is in radians (ae0d714bbd by @javache)
- Fix invariant violation when using viewability callbacks with horizontal RTL FlatList on Paper (a2fb46ec0d by @NickGerleman)
- Fix invariant violation when
maintainVisibleContentPosition
adjustment moves window before list start (c168a4f88b by @NickGerleman) - Fix backfaceVisibility after transform changes (242c835c42 by @javache)
- Add missing type for TextInput.readOnly in Typescript (deb81853f5 by @antliann)
- Do not render mocked when
visible=false
(468a13635a by @mdjastrzebski) - Fix a type issue of NativeEventEmitter (d4d323cbc2)
- Add support to archive Schemes names with backspaces (a384e076e0 by @yardenPhy)
- Updated TypeScript definitions to include userSelect style support. Refer to commit 2e4d8b6c145 for the specific changes. (30ab7a45ec by @MjMoshiri)
- Use right edge of ScrollView viewport for
scrollMetrics.offset
in RTL (0e69050612 by @NickGerleman) - AnimatedColor flickering on Android (ec97646fe4)
- Fixup contentLength invalidation logic (ace0a80dea by @NickGerleman)
- Right align scrollToIndex in RTL (5596f1c25b by @NickGerleman)
- Cache ScrollView content length before calling
scrollToIndex
(33d6da01ea by @NickGerleman) - Update
event-target-shim
import to support Metro resolvingmjs
modules beforejs
. (e37e53086a by @EvanBacon) - Avoids re-renders during text selection on desktop platforms by limiting native-only
isHighlighted
prop to iOS (3d2fd4bf22) - Fixed missing property
signal
for theRequest
interface (823b1f467b by @ljbc1994) - Remove need for platform overrides to Settings (3c15b68d56 by @christophpurrer)
- Remove need for each platform to implement ToastAndroid as UnimplementedView (800ea60393 by @christophpurrer)
- Remove need for each platform to implement DrawerLayoutAndroid as UnimplementedView (151f3900de by @christophpurrer)
- Remove need for each platform to implement ProgressBarAndroid as UnimplementedView (c02fcca187 by @christophpurrer)
- Correct the NativeSyntheticEvent type (fedad15a69 by @mmmulani)
- (4aa53d241d by @IslamRustamov)
- Fixed missing File declaration in Typescript global.d.ts (9c0441b8a1 by @trashcoder)
- Android does't crash when using remote debugger (0fe5ffd568 by @javache)
- Fix timestamps and grouped display of console messages within in a
console.group
(48791bcd98) - When animating using native driver, trigger rerender on animation completion in order to update Pressability responder regions (c870a529fe by @genkikondo)
- Specify float value in ParagraphLayoutManager (efc5f73f27 by @TatianaKapos)
- When animating using native driver, trigger rerender on animation completion in order to update Pressability responder regions (03f70bf995 by @genkikondo)
- Fixed computation of layout via
ref.measureRelative
andref.measureInWindow
for nodes with scale/rotate transforms in their parents. (64416d9503 by @rubennorte) - Remove duplicated code that resulted after a merge conflict. (8dcaa4cc3b by @cipolleschi)
- Fix[devtools]: fixed duplicated backend activation with multiple renderers (ada6c51943 by @hoxyq)
- Change FlatList
viewabilityConfig
prop typeany
toViewabilityConfig
(5dfa38a20e by @jeongshin) - Refactor:
substr()
is deprecated, usingslice()
instead across RN codebase (8a49754cda by @Pranav-yadav) - Fix VirtualizedList with
maintainVisibleContentPosition
(69b22c9799 by @janicduplessis) - Make sure initialScrollToIndex is bigger than 0 when adjusting cells (eb30a80c81 by @okwasniewski)
- Comment out unreferenced formal parameter (3c0ad81fef by @TatianaKapos)
- Resolved property name conflicts in event-emitter codegen (3759a26214 by @javache)
- Issue with TurboModule C++ codegen with optional return types (dd6d57eea1 by @javache)
- Issue with TurboModule C++ codegen with optional args (0a8164d993 by @javache)
- Fix podspecs building with C++ 14 (5ea0b449e2 by @NickGerleman)
- URLs parsed by RCTConvert should be encoded respecting RFC 3986, 1738/1808 (9841bd8185 by @philIip)
- Enhance/fix error reporting in reload and destroy (f437224042 by @RSNara)
- Create FeatureFlag to gate Stable API for Turbo Module (49197411d8 by @mdvacca)
- Do not render React DevTools overlays unless they are connected (39016889d0 by @hoxyq)
- Fix nullable-to-nonnull-conversion warnings (2856bef721 by @caodoan)
- Clear bundler banner messages after a certain delay during development. (6eeb81a86e by @jacdebug)
- Correctly invalidate NSTextStorage when non layout related props change (247da6ef7f by @sammy-SC)
- Ensure systrace events are always stopped (97b6829b83 by @javache)
- SafeAreaView shouldn't dirty layout on clone by default (ecf1b84795 by @javache)
- Terminate instead of throwing if TurboModule callback double-called (dfd445cbc6 by @NickGerleman)
- Reduce dynamic SchedulerFeatureFlags (2a58b06863 by @kassens)
- Enable -Wextra in C++ builds (99674b360a by @NickGerleman)
- Update
deprecated-react-native-prop-types
to remove fragile transitive*
dependencies. (f00594b262 by @robhogan) - Fix
createAnimatedStyle
when providing an undefined transform style (7e26e0270b by @gabrieldonadel) - Bail on hiPri render on missing layout data before checking priority (817fedb0e7 by @NickGerleman)
react-native/codegen
shouldn't be built unless it's in the repo — fixespod install
failures in pnpm setups (3dd6a83c0e by @tido64)- Correctly declare runtime dependencies (c32064c510 by @tido64)
Android specific
- Fix Text cut off issues when adjusting text size and font weight in system settings. (babbc3e43c)
- Set the accessibility role to
NONE
when anull
string is passed tofromValue
(0f48e86fed by @cipolleschi) - Fix default shadow radius in TextAttributeProps (05fd10d12f by @NickGerleman)
- UI freezing when using minimumFontScale (79e8474b14 by @g4rb4g3)
- Fixed ScrollView momentum not stopping when calling scrollToEnd programmatically (2f86aafdfd by @Almouro)
- Fixed an issue where calling
Accessibility.setAccessibilityFocus
on an unmounted component would crash (5323221d14 by @Abbondanzo) - Localize Talkback strings (a7e5c96a3d by @NickGerleman)
- Fix border clip check (7d1f7f3f5f by @gabrieldonadel)
- Improve threading in enableFabricPendingEventQueue experiment (318b4c0d4b by @javache)
- Change
connectTimeout
tocallTimeout
in OKHttp client (e00f2445d2 by @troZee) - Fix a race with FpsView on using FpsDebugFrameCallback. (a63b443e62)
- Fix crash in CompositeTurboModuleManagerDelegate (e716459d66 by @christophpurrer)
- Fix race condition with ReactMarker calls to its native module (6ab062dfec)
- Generalize RTL Scroll Correction Logic (30c7e9dfa4 by @NickGerleman)
- Fix letters duplication when using autoCapitalize (ab3c00de2c by @fknives)
- Fix ScrollView's onMomentumScrollEnd being called multiple times on Android (06668fcbac by @AntoineDoubovetzky)
- ANR when having an inverted
FlatList
on android API 33+ (90186cd9b7 by @hannojg) - Surfaces in the new architecture no longer leak views once stopped (c16e993bb8 by @javache)
- Support Android Transitions during Fragment navigation (187f16ddc6 by @grahammendick)
- Foreground ripple crashed on api < 23 (ca65d97d60 by @vonovak)
- Exclude trailing whitespace from newline character on measuring text line width (2674d9bf7c by @bernhardoj)
- W3CPointerEvents: include screen coordinates in pointer events (3460ff5d04)
- W3CPointerEvents: include modifier key properties in Android pointer events (2bd4429365)
- W3CPointerEvents: fix NPE due to null targetView (96fd107d61)
- W3CPointerEvents: fix a case where cancel can cause NPE (79ae710cc5)
- W3CPointerEvents: properly update hit path during native gestures (396cdac629)
- Fixing line truncation issue in Text containing /n when numberOfLines = {1} (0af806e96c)
- Fix ellipsis being cut on certain font sizes (6d24ee13a4 by @BeeMargarida)
- Fix links hidden via ellipsis crashing screen readers (d54f486fe6 by @dhleong)
- Fixed inconsistent styling for text nodes with many children (dcb4eb050a by @cubuspl42)
- Fix copy / paste menu and simplify controlled text selection on Android (d4f6cf1d80 by @janicduplessis)
- When applications reload, the previous react root will be correctly closed (3a7555fb18 by @javache)
- ViewManagers now receive an invalidate callback (c5e7cd4ad9 by @javache)
- Fixed nightly builds of Android no longer building due to a recent version format change (cceef57be1 by @tido64)
- Fix unreadable dev menu header on dark theme apps (88e3130218 by @cortinico)
- Modify ViewManager.receiveCommand to call into delegate (585057d746 by @genkikondo)
- Fix crash when Android requests permission with activity that does not implement
PermissionAwareActivity
(cff4bc8eea by @yungsters) - Fix issue downloading request body via remote URL (4b39f44a61 by @daisy1754)
- Fix textTransform not working in New Architecture (a2f3fa65bc by @tarunrajput)
- Fix projects being broken on dependencies starting with
a..
(5ec2c01697 by @cortinico) - Fix android root view group removal during instance re-creation (bb075d785d by @wschurman)
iOS specific
- Fix TextInput vertical alignment issue when using lineHeight prop on iOS (Paper - old arch) (35a1648d0c by @fabriziobertoglio1987)
- Announce checkbox and radio button roles on VoiceOver (12f4a19306 by @carmenvkrol)
- Localize Voiceover strings in Paper (0e99b19257 by @NickGerleman)
- Re-enable direct debugging with JSC on iOS 16.4+ (5cf8f43ab1 by @Saadnajmi)
- Fixed window.requestIdleCallback not firing on iOS (72abed2c96 by @matt-oakes)
- Adapt iOS16+ dictation judge condition (e8b4bb0684 by @hellohublot)
- Dimensions could be reported incorrectly when resizing iPad or macOS apps (61861d21ff by @jpdriver)
- Include
accessibilityValue
prop values inaccessibilityValue
(0c25f19d39 by @carmenvkrol) - Don't send the
RCTUserInterfaceStyleDidChangeNotification
when the app is in the background. (6118aff69d by @alanjhughes) - Rotation transforms are no longer clipped when zIndex is applied (850349b1d2 by @javache)
- Fix the default trait collection to always return the value of the window (94fea182d6 by @alanjhughes)
- Fix Alert userInterfaceStyle having no effect (0e150d071e by @zhongwuzw)
- Properly escape URLs (5e983d51d8 by @cipolleschi)
- Handle doulbe
#
and partially escaped urls (2b4e1f5ece by @cipolleschi) - RNTester's PROJECT_ROOT points to
packages/rn-tester
(cd30bc3888 by @dmytrorykun) - Fix inverted
contentOffset
in scroll events in RTL (4f8a8ce316 by @NickGerleman) - Fix bad comparison in RCTScrollViewComponentView RTL (65b7680720 by @NickGerleman)
- Use
addEntriesFromDictionary
properly in RCTBaseTextInputView. (e6dd22c628 by @cipolleschi) - Change the top of perf monitor component. (5ba8de05b5 by @zerosrat)
- Only modify EXCLUDED_ARCHS when needed for Hermes (ee1cd13db6 by @jpdriver)
- Fix
use_react_native
to support custom react native absolute paths (835f62c189 by @gabrieldonadel) - UIApplicationDidReceiveMemoryWarningNotification has not been obeyed on iOS since RN 0.69 (8f072b438a by @liamjones)
- Debug builds from cli disable idle to stop application going into background (41d5f4bce2 by @blakef)
- Fix RCTImageBlurUtils.m Greyscale Crash (d6c4f2786c by @OskarEichler)
- Logbox footer buttons respect safe area (6d6b1fdc75 by @philipheinser)
- Add support for Components with custom names in the interop layer. (daedbe6e3e by @cipolleschi)
- FP Tolerance in iOS Paper SafeAreaView debouncing (c9c5651108 by @NickGerleman)
- RNTester-ios / RCTAppDelegate > correctly check for USE_HERMES Flag (e364553492 by @christophpurrer)
- Exclude JSI headers when using hermes-engine prebuilt. (5029cef0a9 by @dmytrorykun)
- Purge children from view registry on
RCTUIManager
invalidation. (bc63e44b23 by @kkafar) - Fix React-ImageManager dependencies (830c2e7c57 by @cipolleschi)
v0.72.8
Fixed
- Fix
build_codegen!
not finding@react-native/codegen
in pnpm setups (e70166a3a8 by @tido64) - Correctly declare runtime dependencies (df2bbba50b by @tido64)
- Prevent LogBox from crashing on very long messages (c3c6cf4 by @motiz88)
v0.72.7
Changed
- Bump CLI to v11.3.10 (e844a62ce9 by @szymonrybczak)
Deprecated
- Bump deprecated-react-native-prop-types to ^4.2.3 (e031c05cdc by @huntie)
Fixed
- Show correct stack frame on unhandled promise rejections on development mode. (18c9797ecc by @fortmarek)
Android specific
- Fix android crash when apply PlatformColor to borders (265af222aa by @axinvd)
- Fix broken Loading/Refreshing indicator on Android (5dedf277cb by @cortinico)
v0.72.6
Fixed
- Fix a potential bug in
EventEmitter
when used with certain Babel configurations that incorrectly polyfill the spread operator for iterables (9b3bd63723 by @yungsters)
iOS specific
- Set the max version of Active support to 7.0.8 (785f91b67a by @cipolleschi)
v0.72.5
Changed
- Bump CLI to 11.3.7 (6f02d55deb by @huntie)
- Bump @react-native/codegen to 0.72.7 (4da991407d by @Titozzz)
Fixed
Android specific
- Fix building Android on Windows. (054ab62be0 by @alespergl)
- A bug fix for Android builds with new arch on Windows host. (a323249e0a by @birdofpreyru)
- Fix null crash when using maintainVisibleContentPosition on Android (1a1a79871b by @janicduplessis)
iOS specific
- XCode 15 fixes (21763e85e3, 0dbd621c59 & 8a5b2d6735)
- Fix timer background state when App is launched from background (a4ea737ae1 by @zhongwuzw)
- Guard
JSGlobalContextSetInspectable
behind a compile time check for Xcode 14.3+ (3eeee11d7a by @Saadnajmi) - Re-enable direct debugging with JSC on iOS 16.4+ (8b1bf058c4 by @huntie)
v0.72.4
Added
Android specific
- Native part of fixing ANR when having an inverted FlatList on android API 33+ (6d206a3f54 by @hannojg)
- For targeting SDK 34 - Added RECEIVER_EXPORTED/RECEIVER_NOT_EXPORTED flag support in DevSupportManagerBase (177d97d8ea by @apuruni)
Changed
- Bump cli and metro (40ea8ffcc7 by @lunaleaps)
- Hermes bump for hermes-2023-08-07-RNv0.72.4-813b2def12bc9df026 (e9ea926ba3 by Luna Wei)
- Bump CLI to 11.3.6 (a3cfdf0a08 by @szymonrybczak)
Fixed
- Allow string
transform
style in TypeScript (2558c3d4f5 by @NickGerleman) - Fix missing Platform in VirtualizedList (7aa8cd55be by Luna Wei)
- Mount react devtools overlay only when devtools are attached (03187b68e5 by @hoxyq)
Android specific
- Remove option to paste rich text from Android EditText context menu (b1ceea456d by @fabriziobertoglio1987)
- Fixed ScrollView not responding to Keyboard events when nested inside a KeyboardAvoidingView (c616148a05 by @andreacassani)
- ANR when having an inverted FlatList on android API 33+ (3dd816c6b7 by @hannojg)
v0.72.3
Fixed
iOS specific
- Revert "Fix pod install for swift libs using new arch (#38121)" to fix build error with Xcode lower than Xcode 14.3 (8f41f25 by @kelset)
v0.72.2
Changed
- Remove deprecated stub types
@types/metro-config
from template (63f78ea8de by @kelset) - Bump CLI to 11.3.5 and Metro do 0.76.7 (ba5fa9c394 by @kelset)
- Bump
@react-native/metro-config
to0.72.9
(21daa6e790, f37386176 by @kelset)
Android specific
- Remove okhttp3 internal util usage (3e3032636d by @adrianha)
iOS specific
- Update logic to add and remove views in the view registry for the interop layer. (8d2eec367d by @cipolleschi)
- Disable NSTextStorage caching in OSS (5bda54c1f1 by @sammy-SC)
Fixed
global.performance
in undefined when starting metro from Expo CLI (0ccbd65581 by @Kudo)- Re-enabled debugging for debug builds (41477c898c by Matt Blagden)
- Add global hook to assert that base Metro config is called (29f2602ff9 by @huntie)
Android specific
- Do not create RuntimeExecutor on non-JSI executors (#38125) (d73b61c7c7 by @lunaleaps)
- Prevent crash on OnePlus/Oppo devices in runAnimationStep (a46a7cd1 by @hsource)
iOS specific
- Fix build error when there are multiple EXTRA_COMPILER_ARGS (28f4ebab8a by @fergusean)
- Build failure with pnpm and use_frameworks! due to incorrect header paths (58adc5e4b9 by evelant)
- Fix onChangeText not firing when clearing the value of TextInput with multiline=true on iOS (0c9c57a9f7 by @kkoudev)
- Fix pod install for libraries using Swift code when the new architecture is enabled (a4a0655496 by @louiszawadzki)
v0.72.1
Added
iOS specific
- Add warning to help users migrate away from the interop layer. (a702d0515f by @cipolleschi)
- Allow to lookup for ViewManager without the RCT prefix in the Interop Layer (a28881a3d7 by @cipolleschi)
Changed
react-native/metro-config
now includes all base config values frommetro-config
(bbcedd385b by @huntie)- Bump CLI to 11.3.3 (da84901f78 by @kelset)
- Bumped
@react-native/metro-config
to0.72.7
,@react-native/gradle-plugin
to0.72.11
,@react-native/virtualized-lists
to0.72.6
(95db9f98f2 by @kelset)
Fixed
react-native/virtualized-lists
does not needreact-test-renderer
at runtime (7a2a3278d0 by @tido64)
Android specific
- Exclude trailing whitespace from newline character on measuring text line width (83d7a48a46 by @bernhardoj)
- Set kotlin.jvm.target.validation.mode=warning on user projects (10beefbbfa by @cortinico)
iOS specific
- Bump SocketRocket to 6.1.0 (8ce471e2fa by @cipolleschi)
- fix
pod install --project-directory=ios
failing (0b96bdcf32 by @tido64)
v0.72.0
Breaking
- Bump version of Node used to 18 (f75b92a by @leotm), and minimum Node JS version to 16 (afc91de79a by @robhogan)
- Constrain data type in
getItemLayout
callback (febf6b7f33 by @NickGerleman) - Fix react-native/eslint-config linting of jsx files (59ee573527 by @NickGerleman)
iOS specific
- Generates RNCore components inside the ReactCommon folder and create a new pod for platform-specific ImageManager classes (5d175c6775 by @cipolleschi)
- Moved the RCTAppSetupUtils to the AppDelegate library to break a dependency cycle (36a64dc2bd by @cipolleschi)
- Split the
ReactCommon/react/nativemodule/core/platform/ios
andReactCommon/react/nativemodule/samples
in two separate pods to break circular dependencies. (21d530208f by @cipolleschi)
Added
- Improve handling of invalid DimensionValue usage (02e29abead by @NickGerleman)
- Add new JS performance API to support getting RN app startup timings (c1023c73b0)
- Add performance memory API with native memory Info (70fb2dce45)
- Added Web-compatible
DOMRect
andDOMRectReadOnly
classes to the global scope. (673c7617bc by @rubennorte) - Add onStartReached and onStartReachedThreshold to VirtualizedList (7683713264 by @janicduplessis)
- Added
setColorScheme
toAppearance
module (c18566ffdb, (0a4dcb0309 by @birkir) - Add logical border block color properties (597a1ff60b by @gabrieldonadel)
- Add logical border-radius implementation (4ae4984094 by @gabrieldonadel)
- Added CSS logical properties. (3681df2878 by @necolas)
- Concurrent rendering safe implementation of Animated (5cdf3cf726, (5e863fc42c by @sammy-SC)
- Create explicit error message for TypeScript functions used as props in Codegen components, redirecting devs to the supported function types
BubblingEventHandler
andDirectEventHandler
. (dc2cbed07c by @gtomitsuka) - Generate enum types that would be allowed to be used as well as string/number in c++ turbo modules generators (ceb1d0dea6 by @vzaidman)
- Add enum example to Android/iOS rn-tester TurboModule (7c82a3fa11 by @christophpurrer)
- Allow the use of "Partial" in Turbo Module specs. (97e707d897 by @vzaidman)
- Added newline to UTFSequence (9cf35bfcc4)
- Added "coverage" folder generated from
jest --coverage
to .gitignore (7324c22ff9 by @Adnan-Bacic) - Add support for getting/setting reload-and-profile-related settings in iOS + Android (96d6680e00)
- For supporting Dev Loading View across platforms, adding the DevLoadingViewController without an activity/context. (662b51fad2)
- Pass DevTools Settings Manager to connectToDevTools (a9bed8e75d)
- React-native-code-gen Add Union Type support for Java/ObjC TurboModules (2eccd59d7c by @christophpurrer)
- Making Dev Loading View cross platform by abstracting out the activity/context logic from the controller in a polymorph class. (1a4fa92b25)
- Added CSS logical properties by mapping layout props. (cf3747957a by @mayank-96)
- Add, but don't use, DevTools Settings Manager. (6152763398)
Android specific
- Adding pager, scrollview, viewgroup, webview, drawer accessibility roles (55c0df43b9 by @fabriziobertoglio1987)
- Add TYPE_VIEW_HOVER_ENTER to AccessibilityNodeInfo sendAccessibilityEvent (a0adf57e50 by @fabriziobertoglio1987)
- Add maintainVisibleContentPosition support on Android (c19548728c by @janicduplessis)
- For supporting Dev Loading View across multiple platforms, changing the Loading View of Android to rely on the native implementation instead of Toast while keeping backwards comptability. (9f6b532bdb)
- For supporting Dev Loading View across multiple platforms, adding native implementation for showMessage() & hide() of Dev Loading Module (4923a0997b)
- For supporting Dev Loading View across multiple platforms, altering the javascript implementation of Loading view of android to also rely on native implementation as iOS instead of Toast, thereby unifying both platforms (068a20842d)
- Added possibility to mark Fresco image pipeline as already initialized (605a52fe3e by @oprisnik)
- Support generating
getName
in react-native-codegen for Java TurboModules (90538909f9 by @javache) - Override default Talkback automatic content grouping and generate a custom contentDescription (759056b499 by @fabriziobertoglio1987)
- Enable AnimatedInterpolation to interpolate arbitrary color types. (e7dbfb2dbd by @javache)
- Added getter for line height in CustomLineHeightSpan (2d2f9da80b)
- Add POST_NOTIFICATIONS permission to AndroidManifest of RNTester (c84cc4b46c by @makovkastar)
iOS specific
- Added examples of direct manipulation (a44d8a0f8a by @cipolleschi)
- Support workspace and isolated setups with
pod install
(0eff8d66c9 by @robhogan) - Add example in the Interop Layer to use constants (a5866ca3aa by @cipolleschi)
- Add example in the Interop Layer to use events (c005830958 by @cipolleschi)
- Add invoking dev menu on iOS by pressing
d
in terminal. (f72f8daeaf by @szymonrybczak) - Add comments for specifying the path to React Native (3876368f0c by @sottar)
- Add explicit support for M2 iPad Apple Pencil hovering in the Pointer Events implementation (0c150b2289 by @vincentriemer)
- Add message with instructions about what to do if the cleanup of the build folder fails. (1b7127bb05)
- Enable AnimatedInterpolation to interpolate arbitrary color types. (56b10a8351 by @javache)
- Allow for custom project dir in react-native-xcode script (436da18fce by @itxch)
- Enable AnimatedInterpolation to interpolate arbitrary color types. (6003e70e84 by @javache)
Changed
- Default condition set for experimental Package Exports is now
['require', 'react-native']
(308838c0ff by @huntie) - Run commit hooks before layout calculation (8d0b5af1fc by @tomekzaw)
- Support mixed props for components in codegen (0ae5e50e37 by @genkikondo)
- Switch from
types/jest
tojest/globals
for new react-native projects (9af3c9654a by @UNIDY2002) - Move virtualized lists to react-native/virtualized-lists package (2e3dbe9c2f by @gabrieldonadel)
- Add minimum necessary .d.ts files to react-native-codegen (ac5aec3f5c, (be3845adec by @ZihanChen-MSFT)
- Change PerformanceApiExample to use ModulePathing (6a395cb2d7 by @TatianaKapos)
- Re-organize the parameters of TurboModuleBinding::install() (cbdbb47467)
EventEmitter#addListener
now throws if the 2nd argument is not a function. (2780ba38ff by @yungsters)- When a ScrollView's
ref
orinnnerViewRef
changes, the old ref will now be invoked withnull
and the new ref with the active instance. (Previously, changingref
orinnerViewRef
on aScrollView
would be treated as though the ref had not changed at all.) (7cf4cf3afb by @yungsters) - Turbo Module supports intersection type for TypeScript (bbed15d4ae by @ZihanChen-MSFT)
- Find node binary when using asdf as the node version manager with custom
$ASDF_DIR
(f6a4e4f20f by @MuhmdRaouf) - Turbo module codegen support interface with inheritance in module (bf34810c5c by @ZihanChen-MSFT)
- Use number literals in TypeScript types for
FileReader
andXMLHttpRequest
states (8568b93733 by @eps1lon) - Moved jest config from package.json to dedicated jest.config.js file (473eb1dd87 by @Adnan-Bacic)
- Removed iOS flag from
scrollEventThrottle
docs (8ea1cba06a by @robwalkerco) - Renamed App-test.tsx to App.test.tsx to unify naming convention with create-react-app (3c03aef151 by @Adnan-Bacic)
- Turbo module codegen support interface like alias in module (8befb740d6 by @ZihanChen-MSFT)
- Append RCTRedBoxGetEnabled() in RCTExceptionsManager.mm (2217ea4136 by @nxdm)
- ActivityIndicator and remove .flow (9c57a7f209 by @lunaleaps)
- Mark methods on JSI references as const. (03b17d9af7 by @neildhar)
- Fix codegen output for object with indexer (f07490b1f1 by @ZihanChen-MSFT)
- Fix codegen to add
T
ofPromise<T>
in CodegenSchema.js (8a38e03e0f by @ZihanChen-MSFT) - Renamed react-native/polyfills -> react-native/js-polyfills and align with other packages versions (0.72.0) as a part of migration to monorepo (71399d0891 by @hoxyq)
- Rename normalize-color to normalize-colors as part of https://github.com/react-native-community/discussions-and-proposals/pull/480 (dc3355920d by @Titozzz)
- Renamed react-native-codegen package to react-native/codegen and updated references (b7a85b59b5 by @shivenmian)
- Rename assets to assets-registry (3c5a8290ae by @fortmarek)
- Rename polyfills to js-polyfills as part of https://github.com/react-native-community/discussions-and-proposals/pull/480 (ca1ae5c44f by @Titozzz)
- Rename react-native-gradle-plugin to react-native/gradle-plugin (6f11b10a88 by @hoxyq)
- Renamed
react-native-community/eslint-plugin
toreact-native/eslint-plugin
v0.72.0 to align with other packages (5aead70e80 by @afoxman) - Untrack Test Reports generated by test libraries (reporters E.g.
jest-junit
) (0ba1127c15 by @Pranav-yadav) - Add
TSMethodSignature
to react-native-codegen (ae1d54bc5a by @ZihanChen-MSFT) - Any
ref
set onTextInput
will now be updated less frequently (when the underlyingref
has not changed). (666f56bff3 by @yungsters) - Add intersection types in react-native-codegen for TypeScript (813fd04118 by @ZihanChen-MSFT)
- Update TextInput inputMode to map "none" to showSoftInputOnFocus (b6869be1ac by @gabrieldonadel)
- LogBox now makes URL links tappable. (d9ade19b71 by @sammy-SC)
- Upgrade to deprecated-react-native-prop-types@4.1.0 (f84256a924 by @yungsters)
- Flipper to 0.182.0 (8fae37eaea by @cortinico)
- Bump metro to 0.76.5 and CLI to 11.3.1 (7c5dc1d9bc)
- Bump tsconfig/react-native to 3.0.0 (5c4649af27 by @NickGerleman)
- Brew overwrites system Python 3. (ed8a3e08e2 by @blakef)
- Change the way types for New Architecture/experimental APIs are exposed. (f9bf14d09d by @lunaleaps)
- Backporting babel bumps to 0.72 (97986561f6 by @hoxyq)
Android specific
- Migrate packages to not eager initialize view managers (d7eb3bfcb3)
- Do not explicitely depend on androidx.swiperefreshlayout:swiperefreshlayout (179d5ab8ee by @cortinico)
- Remove the enableSeparateBuildPerCPUArchitecture from the template entirely (dadf74fb68 by @cortinico)
- Convert Bridge-only calls to overridable functions (1058bb8096)
- Use ThemedReactContext explicitly to reduce confusion (9f78517d64)
- Add notes to
aria-labelledby
from Text props (72d3da19ce by @gabrieldonadel) - Add POST_NOTIFICATION runtime permission to RNTester (63a4539e4d by @makovkastar)
- Removing code for Android API level < 21 (22ba1e45c5 by @mdvacca)
- Align creation of FabricUIManager with bridge (6d45e49dc7)
- For supporting Dev Loading View across multiple platforms, changed the Loading View of Android to rely on the native implementation instead of Toast. Getting rid of the JS changes relying on Toast for Dev Loading View now that the native module is released. (208f559505)
- Remove unnecessary repositories{} block from top level build.gradle (51a48d2e2c by @cortinico)
- Include the inspector in all build modes, and only turn it off/on at runtime. (8284303ec8)
- Bump Soloader to 0.10.5 (92a705b0e0 by @simpleton)
- Bump AGP to 7.4.x (4c5eb8dd2a, (5647d79dc9 by @cortinico)
- Bump Gradle to 8.x (81dd3afe0b, (10a8f186eb by @cortinico)
- Kotlin to 1.7.22 for Gradle (270584ac79 by @cortinico)
iOS specific
- Fixed URL to New Arch info (6714b99289 by @frankcalise)
- Prefer
Content-Location
header in bundle response as JS source URL (671ea383fe by @robhogan) - Add support to enable the Hermes Sampling Profiler (dce9d8d5de by @cipolleschi)
- Enable layout animations on iOS in OSS (0a30aa3612 by @sammy-SC)
- Update how the
react-native.config.js
is consumed to add elements in the interop layer. (a055e07c3e by @cipolleschi) - Use contents of sdks/.hermesversion to let cocoapods recognize Hermes updates. (9f496e2be5 by @dmytrorykun)
- Rename "Debug Menu" title to "Dev Menu" (6971540c90 by @huntie)
- Give precedence to
textContentType
property for backwards compat as mentioned in https://github.com/facebook/react-native/issues/36229#issuecomment-1470468374 (c0abff11b6 by @lunaleaps) - Use SocketRocket for web socket library (9ee0e1c78e)
- Pull out CGContext early in UIImage+Diff (7f2dd1d49c by @Saadnajmi)
- Remove assumptions on super's description (a5bc6f0574 by @Saadnajmi)
- Automatically update Search Path on pods (ad686b0ce1 by @cipolleschi)
- Install the -DNDEBUG flag on Release configurations, without requiring PRODUCTION=1 flag (93fdcbaed0 by @cipolleschi)
- Create a new compile time flag to enable remote sample profiling. (de28f9b8ea)
- Bumbed version of Cocoapods to support Ruby 3.2.0 (0f56cee8e1 by @cipolleschi)
- Automatically install the RuntimeScheduler (3e88fd01ce by @cipolleschi)
- Generate RCTFabric framework's headers in the React folder (e7becb06c1 by @cipolleschi)
- Properly install dependencies with
use_frameworks!
(6d34952420 by @cipolleschi) - Moved the files from
.../textlayoutmanager/platform/ios
to.../textlayoutmanager/platform/ios/react/renderer/textlayoutmanager
(0e09d6f8a6 by @cipolleschi) - Moved the files from
.../imagemanager/platform/ios
to.../imagemanager/platform/ios/react/renderer/imagemanager
(931a4c5e23 by @cipolleschi) - Moved the files from
.../textinput/iostextinput
to.../textinput/iostextinput/react/renderer/components/iostextinput
(5588e0fe0b by @cipolleschi) - Moved the files from
.../nativemodule/xxx/platform/ios
to.../nativemodule/xxx/platform/ios/ReactCommon
(d1e500c3b1 by @cipolleschi) - Moved the files from
.../platform/ios
to.../platform/ios/react/renderer/graphics
(b5e4fea86e by @cipolleschi) - Build hermesc in Xcode run script phase. (a5c77115ae by @dmytrorykun)
- Do not add "Copy Hermes Framework" script phase to hermes-engine target. (af6c9e2183 by @dmytrorykun)
- Refactor RCTEventEmitter initialization (25a00520d8 by @cipolleschi)
Deprecated
iOS specific
- Deprecate the
ReactCommon/react/renderer/graphics/conversions.h
in favor ofReactCommon/react/core/graphicsConversions.h
(d72697ca95 by @cipolleschi)
Removed
- Remove inline props from experimental (8c4694f708)
- Refactor(react-native-github): internalized Slider JS files (05968d16e1 by @hoxyq)
- Remove
.node_version
from app template. (a80578afc4 by @robhogan) - Clean up unnecessary lambda function for preallocate after D40403682 (0569f6500e)
- Remove unused type imports 1/1 (58a6cf840a by @alunyov)
- Remove force_static from ReactCommon/react/renderer/core (e088f81375 by @javache)
Android specific
- Deprecate LazyReactPackage.getReactModuleInfoProviderViaReflection() (11570e71a2)
- UIManager.preInitializeViewManagers (848ac0c3be by @javache)
- Removed android sources of Slider module (4c40014d43 by @hoxyq)
- Remove the react.gradle file as it's unused (d4a9bdc40e by @cortinico)
- Remove .mk prebuilt file and .mk file generation from codegen (7933dd78da by @cortinico)
- Remove deprecated POST_NOTIFICATION from
PermissionsAndroid
(deb6b380b2 by @cortinico)
iOS specific
- Removed unused RCTWeakProxy helper (2fbefff178 by @javache)
- Removed Slider module (465e937533 by @hoxyq)
- Removed DatePickerIOS module (0ff7b7fac2 by @hoxyq)
- Removed iOS sources of Slider module (fee9510b2d by @hoxyq)
- Removed native iOS sources of ProgressViewIOS (1453ef1a88 by @hoxyq)
- Remove conformance to RCTComponentViewFactoryComponentProvider which does not exists in 0.72 (ee177cab75)
Fixed
- Improved support for AnimatedInterpolation of color props. (b589123a3d by @javache)
- Improved handling of native colors in Animated.Colors (dccb57fb50 by @javache)
- Patch AnimatedStyle to avoid discarding the initial style info (c06323f463 by @gabrieldonadel)
- Gracefully handle out-of-bounds initialScrollIndex (aab9df3710 by @NickGerleman)
- Fix VirtualizedList onViewableItemsChanged won't trigger if first item in data is null (011ea3306f by @gauravroy1995)
- Fix VirtualizedList
onViewableItemsChanged
won't trigger if first item in data evaluate to false (1f0c2c2895 by @samchan0221) - Calculate VirtualizedList render mask for focused cell during batched state updates (cab865be79 by @NickGerleman)
- Bail on realizing region around last focused cell if we don't know where it is (776fe7a292 by @NickGerleman)
- Avoid VirtualizedList viewability updates during state updates (62a0640e4a by @NickGerleman)
- Add
lineBreakStrategyIOS
prop type for Text and TextInput (0c5c07fc9b by @jeongshin) - Fix negative value rounding issue for nodes across an axis (37171ec78f)
- Reduce use of assertions when parsing accessibility props passed from JS (a064de151f by @motiz88)
- Fixes crash when using togglebutton accessibilityRole with Text (dcc5dbe562 by @fabriziobertoglio1987)
- Fixes an issue with the EventEmitter type definition file (4acef8e4a4 by @helenaford)
- Fix animated components ref type inferred
any
(419b41f06d by @jeongshin) - Allow out-of-range initialScrollIndex after first scroll (d595fbcc5a by @NickGerleman)
- Delete refs to unmounted CellRenderers (c376e78224 by @NickGerleman)
- Enforce compatibility with
exactOptionalPropertyTypes
(7858a2147f by @NickGerleman) - Fix touch handling so that hitSlop can extend beyond parent view bounds. (96659f8e83 by @genkikondo)
- Export EmitterSubscription TypeScript Type (eb83356cee by @NickGerleman)
- Fix: remove gap if its last element in line (fix flex gap extra spacing when children determine parents main axis size) (d867ec0abb by @intergalacticspacehighway)
- Fixes JSDoc in Clipboard setString (0ecb4e64f0 by @mikemikhaylov)
- Fix typing for TS AnimatableStringValue (eb2f86a46a by @rshest)
- Fix types + documentation for CellRendererComponent (2d41e6642e by @NickGerleman)
- Fixed error during native DAG creation when there are multiple AnimatedValue props (c72c592ecd by @genkikondo)
- Fix YogaLayoutableShadowNode handling of non-layoutable children (024a8dc8ff by @NickGerleman)
- Fix type definition for
unstable_batchedUpdates
(71157f6ba6 by @k-yle) - Add missing SectionList types for Animated SectionList (ed39d639ea by @jeongshin)
- Add objectFit to the ImageStyle interface located in the StyleSheetTypes.d.ts file (32d03c250c by @alvessteve)
- Add src, srcSet, referrerPolicy, tintColor to Image.d.ts declaration file (74cb6073f3 by @alvessteve)
- Fix missing
height
,width
,crossOrigin
props on Typescript Image.d.ts file (bcf493f346 by @alvessteve) - Fixed typo in the initialNumToRenderOrDefault description's comment (ba7f9b40a6 by @ellouzeskandercs)
- Fixed string key calculation in constexpr from Performance C++ native module. (6faddc3870)
- Fix computation of relative layout to return empty layout for nodes with display: none and children. (6018c19991 by @rubennorte)
- Fix edge case when layout animation caused delete and create mutations in the same batch (d9f2491a71)
- Fix edge case when delete is queued with conflict layout animation (cf9c7d51ef)
- VirtualizedList scrollToEnd with no data (98009ad94b by @Andarius)
- Fixed a typo in interface.js (7fedd7577a by @rj1)
- Add
borderCurve
andpointerEvents
toViewStyle
(a0800ffc7a by @eps1lon) - Fix whitespace and newline at EOF in template (efe5f62f91 by @friederbluemle)
- Jest mocked requestAnimationFrame callbacks now receive a timestamp parameter (b44fe4deee by @kmagiera)
- Removes duplicate DoubleTypeAnnotation label (1bab3e24b8 by @mikemikhaylov)
- Filter out Hermes internal bytecode frames (Promise implementation) from error stack traces (4c911a2dec by @motiz88)
- Add missing AccessibilityInfo Types to TS Typings (76a14454d7 by @NickGerleman)
- Fix Errors with TypeScript Tests (c4862a2322 by @NickGerleman)
- Add missing VirtualizedList Imperative Types (621969b8d8 by @NickGerleman)
- Add missing types for AppRegistry (8d6e2f86f5 by @NickGerleman)
- Add type for RootTagContext (4e5421fd9a by @NickGerleman)
- Add missing types to PushNotificationIOS (079312895b by @NickGerleman)
- Fix types for deprecated scrollTo fields (0d091318ed by @NickGerleman)
- Fix Vibration.vibrate() allowing null params (2c2cb09c00 by @NickGerleman)
- Mark scrollToEnd animated as optional (e1af6302fc by @NickGerleman)
- Fix type for
StyleSheet.compose()
(1752fdc0f5 by @NickGerleman) - Add missing type for AnimatedValue.resetAnimation() and AnimatedValue.animate() (25a25ea234 by @NickGerleman)
- Fixed a backwards compatibility issue with AnimatedInterpolation (9b280ad1c5 by @motiz88)
- Explicitly set parser for jsx in ESLint config (cdb88a2427 by @NickGerleman)
- Move flex gap props to the correct type (ff984ac9b5 by @NickGerleman)
- Remove constexpr from RectangleEdges.h (879d303fc7 by @TatianaKapos)
- Move certain list prop TS types from SectionList, FlatList to VirtualizedList(6c33fd1c48 by @aliakbarazizi)
- Limit diagnostics width output by
hermesc
(260bcf7f1b by @tido64) - Fix autoComplete type for TextInput (94356e14ec by @iRoachie)
- Fix performance issues in Hermes when Debug (60a452b485)
- Fix hermesc for linux (32327cc177 by @cipolleschi)
Android specific
- Read GROUP name in gradle-plugin dependency code (615d9aefc4 by @douglowder)
- Fix letters duplication when using autoCapitalize https://github.com/facebook/react-native/issues/29070" (cbe934bcff by @fabriziobertoglio1987)
- Reset accessibility value when it gets a null value (aacf28778e)
- Fix check of "reduce motion" setting on android (790df10fa9 by @baranga)
- Fixed text measurement issue related to hyphenation frequency (01e7ff5513 by @javache)
- Fix layout width calculation in onTextLayout (ccbbcaab9c by @reepush)
- Fix a bug that returns a random number from callback argument
timeRemaining
ofidleCallbacks
registered byrequestIdleCallbacks
. (d9ab5e81cf by @mir597) - Fix android emulator detection for packager host (64ff077a66 by @deecewan)
- Invalid prop values no longer trigger Java exceptions in the legacy renderer (e328fc2e24 by @motiz88)
- Fixed crash occurring in certain native views when handling keyboard events. (f7e35d4ef7 by @aleqsio)
- Fixed ScrollView momentum not stopping when calling scrollTo programmatically (681b35daab by @tomekzaw)
- Fix memory leak in Android (bc766ec7f8)
- Address New Architecture performance regressions by properly setting NDEBUG (8486e191a1 by @cortinico)
- LoadingView of Android to use the Toast till the native implementation is functional (8ccb861231)
- Linking.getInitialUrl should not wait for InteractionManager (3921f05f59 by @javache)
- Using AccessibilityNodeInfo#addAction to announce Expandable/Collapsible State (082a033fbb by @fabriziobertoglio1987)
- Corrected Nullable annotations for parameters and return values in TurboModules codegen (6db3995175 by @javache)
- Fix measurement of uncontrolled TextInput after edit (8a0fe30591 by @NickGerleman)
- Mimimize EditText Spans 9/9: Remove
addSpansForMeasurement()
(92b8981499 by @NickGerleman) - Minimize EditText Spans 8/N: CustomStyleSpan (b384bb613b by @NickGerleman)
- Minimize EditText Spans 6/N: letterSpacing (5791cf1f7b by @NickGerleman)
- Minimize Spans 5/N: Strikethrough and Underline (0869ea29db by @NickGerleman)
- Minimize Spans 4/N: ReactForegroundColorSpan (8c9c8ba5ad by @NickGerleman)
- Minimize Spans 3/N: ReactBackgroundColorSpan (cc0ba57ea4 by @NickGerleman)
- Minimize Spans 1/N: Fix precedence (1743dd7ab4 by @NickGerleman)
- Fix the setup to allow the build-from-source on host projects (fec5658a32 by @cortinico)
- Fix a crash new app template when
createRootView
is invoked with null bundle (990971186f by @cortinico) - Resolved bug with Text components in New Architecture losing text alignment state. (31a8e92cad by @javache)
- Fix border rendering issue when bottom borders has no width (1d51032278 by @BeeMargarida)
- Fix possible
ConcurrentModificationException
inUIManagerModuleConstantsHelper::createConstants
(805b88c7a4 by @j-piasecki) - Fixed incorrect logging of
isCatalystInstanceAlive
in exception handler (daeee2a661 by @jonnycaley) - Make sure the Native RuntimeScheduler is initialized on Old Arch (133ccdcc67 by @cortinico)
- RNGP dependency substitutions for fork with different Maven group (012e4bd654 by @douglowder)
- Make sure the -DANDROID compilation flag is always included (3a321ae2bb by @cortinico)
- Remove license header from android/app/build.gradle (5e847c4309 by @cortinico)
- Make sure Java Toolchain and source/target level is applied to all projects (52d2065910 by @cortinico)
- Fix copy / paste menu and simplify controlled text selection on Android (dfc64d5bcc by @janicduplessis)
- Fixed random styling for text nodes with many children (73f4a788f1 by @cubuspl42)
- Fix Android border clip check (2d15f50912 by @gabrieldonadel)
- Revert "fix: border width top/bottom not matching the border radius" (0817eaa301 by @gabrieldonadel)
iOS specific
- Fix Flipper by moving podfile modification of preprocessor def
FB_SONARKIT_ENABLED
from React-Core to React-RCTAppDelegate where it is now used. (34d5212f5c) - Invalid prop values no longer trigger redbox in the legacy renderer (cb28a2c46e by @motiz88)
- Fix issue where keyboard does not open when
TextInput
showSoftInputOnFocus
changes fromfalse
totrue
(7425c24cbe by @christianwen) - Fix ScrollView
automaticallyAdjustKeyboardInsets
not resetting when Prefer Cross-Fade Transitions is enabled and keyboard hides (b8f1bb50f7 by @grgmo) - Unrecognized fontFamily values no longer trigger a redbox (d6e9891577 by @motiz88)
- Do not send extra onChangeText even wnen instantianting multiline TextView (a804c0f22b by @dmytrorykun)
- Support 120 FPS or more in
RCTFPSGraph
(987dd6a358 by @mrousavy) - Fix duplicate [RCTConvert UIUserInterfaceStyle:] (d8b4737ca6 by @NickGerleman)
- Blob data is no longer prematurely deallocated when using blob.slice (36cc71ab36 by @awinograd)
- Unbreak cocoapods build (419025df22 by @javache)
- Don't download hermes nightly tarball if it exists (d2dd79f3c5 by @janicduplessis)
- Fix nullability warnings (346b028227 by @tido64)
- Use NSCAssert() in react_native_assert instead of C assert() (c5bc3f1373 by @NickGerleman)
- Honour background color customisation in RCTAppDelegate (5d6f21d744 by @cipolleschi)
- Turn on NDEBUG when pods are installed for production. (421df9ffd5 by @cipolleschi)
- Fix a crash when reloading JS bundle (60f381a8b9 by @sammy-SC)
- Fix missing node error message not printed correctly when deprecated
find-node-for-xcode.sh
is used. (0d82b402aa by @uloco) - Build codegen package while using old architecture (90327d9fba by @Saadnajmi)
- Fix cocoapods warning about merging user_target_xcconfig (2bfb53c2fb by @yhkaplan)
-[RCTUITextField textView:shouldChangeTextInRange:replacementString:]
no longer crashes when we pass in anil
replacement string (d5e6d9cecd by @Saadnajmi)- Remove UIKit import from RCTDevLoadingView.h (e7dcad2ba1 by @christophpurrer)
- Pod install with --project-directory (efd39eea6f by @dcangulo)
- Fixed Mac Catalyst availability checks (70d9b56d71 by @Saadnajmi)
- Fix path issue to properly run the codegen cleanup step (e71b094b24 by @cipolleschi)
- Make sure to add the New Arch flag to libraries (ef11e15ca3 by @cipolleschi)
- Fix dataContentType may be [NSNull null] issue (c0834b884b by @malacca)
- Properly support static libraries and static frameworks (be895c870c)
- Use the right logic to decide when we have to build from source (67d02640ba)
- Fix application of _progressViewOffset in RCTRefreshControl to not occur by default (when value is unset) (0062b10b56 by @objectivecosta)
- Unexpected useEffects flushing semantics (7211ef1962 by @sammy-SC)
- Add support for building with Xcode 15 (8ed2cfded5 by @AlexanderEggers)
Security
- Update and Fixed Prototype Pollution in JSON5 via Parse Method (4ac4a5c27d by @imhunterand)
iOS specific
- Enable Address and Undefined Behavior Sanitizers on RNTester (65e61f3c88 by @Saadnajmi)
v0.71.19
Added
iOS Specific
- Add privacy manifest to pod install and hello world (d669ff7df8 by @philIip)
Changed
iOS Specific
- Bumped hermes to remove Apple's RR API that were unused. Hermes does not requires a PrivacyManifest now. (d8d096d995 by @cipolleschi)
v0.71.18
Fixed
- Fix component stacks for tsx, ts, and jsx files (631c013126 by @hurali97)
iOS specific
- Fix flipper for Xcode 15.3 (2944ca6554 by @cipolleschi)
v0.71.17
Security
- Update CLI to 10.2.7 (28998075d9 by @szymonrybczak)
v0.71.16
Changed
Android specific
- Cherry-picking 'Call super.onRequestPermissionsResult in ReactActivity (#42478)' onto 0.71 (8593306b34 by @LimAlbert)
Fixed
- Symbolication stack fix (0.71.x) (022a9f7835 by @joe-sam)
iOS specific
- Fix path to build-apple-framework (9d6a740bf7 by @hurali97)
- Disable bitcode for Hermes (d6fe029858 by @hurali97)
- Fix symbol not found _jump_fcontext with use_frameworks! (bb592ef0dd by @hurali97)
- Fix flags (c38cdb60ca by @cipolleschi)
v0.71.15
Fixed
Android specific
- Fix Android crash when apply PlatformColor to borders (265af222aa by @axinvd)
- Fixed crash occurring in certain native views when keyboard events are fired. (9497203957 by @kot331107)
iOS specific
- Migrate away from JFrog to download boost (ab19fd6aef by @cipolleschi)
- Fix overriding
EXCLUDED_ARCHS
when installing Hermes on RN v0.71 (16a605b6a3 by @ken0nek)
Changed
- Update node installation on debian (0.71) (bdc0ef3466 by @cipolleschi)
- Bump cli to 10.2.6 (0bc2dd03c1 by @hurali97)
- Fix version of react-native-codegen (c74602fe47 by @lunaleaps)
v0.71.14
Fixed
iOS specific
- Set the max version of Active support to 7.0.8 (ce39931bc2 by @cipolleschi)
- Xcode 15 patch (287482e57f by @fortmarek)
v0.71.13
Added
Android specific
- For targeting SDK 34 - Added RECEIVER_EXPORTED/RECEIVER_NOT_EXPORTED flag support in DevSupportManagerBase (177d97d8ea by @apuruni)
iOS specific
- Added support to inline the source map via RCTBundleURLProvider (f7219ec02d by @Saadnajmi)
Fixed
- Fix: mount devtools overlay only if react devtools are connected (b3c7a5d4cc by @hoxyq)
iOS specific
- Fix onChangeText not firing when clearing the value of TextInput with multiline=true on iOS (0c9c57a9f7 by @kkoudev)
v0.71.12
Fixed
- Prevent LogBox from crashing on very long messages (cd56347dca by @motiz88)
Android specific
- Added CSS logical properties by mapping layout props (2b06a75631 by @NickGerleman and @AlexanderEggers) to fix view flattening on Android.
iOS specific
- fix
pod install --project-directory=ios
failing (fc1abe1d69 by @tido64)
v0.71.11
Changed
- Bump CLI to 10.2.4 and Metro to 0.73.10 (69804c70cb by @kelset)
iOS specific
- Prefer
Content-Location
header in bundle response as JS source URL (671ea383fe by @robhogan)
Fixed
Android specific
- Fixed crash occurring in certain native views when handling keyboard events. (f7e35d4ef7 by @aleqsio)
- Prevent crash on OnePlus/Oppo devices in runAnimationStep (f2c05142 by @hsource)
- Revert "fix: border width top/bottom not matching the border radius" to fix border styling issues (fd8a19d by @kelset)
iOS specific
- Make 0.71 compatible with Xcode 15 (thanks to @AlexanderEggers for the commit in main) (5bd1a4256e by @kelset)
v0.71.10
Fixed
Android specific
- Bump RNGP to 0.71.19 (3be3a7d1a2 by @kelset)
- contains: RNGP dependency substitutions for fork with different Maven group (012e4bd654 by @douglowder)
v0.71.9
Fixed
- VirtualizedList scrollToEnd with no data (98009ad94b by @Andarius)
- Allow string
transform
style in TypeScript (2558c3d4f5 by @NickGerleman) - Fix autoComplete type for TextInput (94356e14ec by @iRoachie)
v0.71.8
Fixed
Android specific
- Read GROUP name in gradle-plugin dependency code (615d9aefc4 by @douglowder)
- Bump RNGP to 0.71.18 (4bf4c470fe by @kelset)
iOS specific
- Do not send extra onChangeText even wnen instantianting multiline TextView (a804c0f22b by @dmytrorykun)
v0.71.7
Fixed
iOS specific
- Address Hermes performance regression (9be2959 by @dmytrorykun)
Android specific
- Resolved bug with Text components in new arch losing text alignment state. (31a8e92cad by @javache)
- Mimimize EditText Spans 9/9: Remove
addSpansForMeasurement()
(92b8981499 by @NickGerleman) - Minimize EditText Spans 8/N: CustomStyleSpan (b384bb613b by @NickGerleman)
- Minimize EditText Spans 6/N: letterSpacing (5791cf1f7b by @NickGerleman)
- Minimize Spans 5/N: Strikethrough and Underline (0869ea29db by @NickGerleman)
- Minimize Spans 4/N: ReactForegroundColorSpan (8c9c8ba5ad by @NickGerleman)
- Minimize Spans 3/N: ReactBackgroundColorSpan (cc0ba57ea4 by @NickGerleman)
- Minimize Spans 1/N: Fix precedence (1743dd7ab4 by @NickGerleman)
- Fix measurement of uncontrolled TextInput after edit (8a0fe30591 by @NickGerleman)
v0.71.6
Fixed
iOS specific
- Fix React Codegen podspec to build on Xcode 14.3 (0010c3807d by @kelset)
v0.71.5
Changed
- Bump CLI to 10.2.2 and Metro to 0.73.9 (4c3bc24893 by @kelset), contains:
- CLI fix: correctly list ios devices and simulators (relevant PR)
- Metro fix: fix watching contents of new directories in NodeWatcher (ab86982 by @robhogan)
Android specific
- Bump RNGP to 0.71.17 (bf490d379f by @kelset), contains:
- Fix patch for codegen for 0.71 (ec3681143e by @kelset)
iOS specific
- Remove ruby-version from 0.71 (1d22e29146 by @cipolleschi)
Fixed
Android specific
iOS specific
- Give precedence to
textContentType
property for backwards compat as mentioned in https://github.com/facebook/react-native/issues/36229#issuecomment-1470468374 (c0abff11b6 by @lunaleaps) - Blob data is no longer prematurely deallocated when using blob.slice (36cc71ab36 by @awinograd)
v0.71.4
Changed
- Make FlatList permissive of ArrayLike data (c03de97fb4 by @NickGerleman)
- Bumping RNGP to
^0.71.16
(3df4a79c3d by @kelset) - Update CLI to 10.2.0, Metro to 0.73.8 (20a6fbd373 by @robhogan) - contains:
- fix: Source maps may have invalid entries when using Terser minification. ((
metro/#928
)[https://github.com/facebook/metro/pull/928]) - fix: Mitigate potential source map mismatches with concurrent transformations due to terser#1341. ((
metro/#929
)[https://github.com/facebook/metro/pull/929])
- fix: Source maps may have invalid entries when using Terser minification. ((
- Bump Hermes Version (291cc0af10) - contains:
Android specific
- Expose
rrc_root
via prefab. (3418f65d88 by @tomekzaw)
Fixed
- Fix touchable hitSlop type (23607aea68 by @bigcupcoffee)
- Fix TouchableOpacity componentDidUpdate causing an excessive number of pending callbacks (8b1f6e09c1 by @gabrieldonadel)
Android specific
- ENTRY_FILE should resolve relative paths from root (6dde1dc7cb by @cortinico)
- Better Monorepo support for New Architecture (0487108461 by @cortinico)
v0.71.3
Changed
- Bump package versions (4b84888a90 by @cipolleschi), (60f0a71060 by @cipolleschi), (a3f205a27b by @cipolleschi):
react-native-codegen
to0.71.5
react-native-gradle-plugin
to0.71.15
Fixed
Android specific
- Fixed jscexecutor crash on Android which is caused from NDK incompatibility (a232decbb1 by @Kudo)
- Used relative paths for gradle commands (bb02ccf13f by @shivenmian)
iOS specific
- fix
pod install --project-directory=...
(ad1ddc241a by @tido64)
v0.71.2
Added
- Added AlertOptions argument to the type definition for Alert.prompt to bring it into parity with the js code. (305ca337c0 by @paulmand3l)
- Added missing
accessibilityLabelledBy
TypeScript type (e162b07982 by @DimitarNestorov) - Added missing
accessibilityLanguage
TypeScript type (71c4f57baf by @DimitarNestorov)
Changed
- Bump
react-native-gradle-plugin
to^0.71.14
in core,@react-native-community/eslint-config
to^3.2.0
in starting template (785bc8d97b by @kelset)
Fixed
- Add
TextInput
'sinputMode
TypeScript types (fac7859863 by @eps1lon) - Fix crash by conditional value of aspectRatio style value (a8166bd75b by @mym0404)
- Fix TurboModuleRegistry TS type (c289442848 by @janicduplessis)
- Fix invariant violation when nesting VirtualizedList inside ListEmptyComponent (1fef376812 by @NickGerleman)
Android specific
- [RNGP] Properly set the
jsRootDir
default value (c0004092f9 by @cortinico) - Do not use WindowInsetsCompat for Keyboard Events (32f54877ff by @NickGerleman)
- Mitigation for Samsung TextInput Hangs (4650ef3 by @NickGerleman)
iOS specific
- Add Back dynamic framework support for the Old Architecture with Hermes (b3040ec624 by @cipolleschi)
- Add Back dynamic framework support for the old architecture (da270d038c by @cipolleschi)
v0.71.1
Added
Android specific
- Add
jsinspector
to the prefab target (a80cf96fc8 by @Kudo)
iOS specific
- Add
initialProps
property toRCTAppDelegate
(b314e6f147 by @jblarriviere)
Changed
- Bump CLI to 10.1.3 (b868970037 by @kelset)
- Bump RNGP to 0.71.13 (416463c406 by @cipolleschi)
Fixed
- Fix(cli,metro,babel): bump cli and metro and babel to fix Windows+Metro issue (df7c92ff4c by @kelset)
Android specific
- Fix ReactRootView crash when root view window insets are null (4cdc2c48e8 by @enahum)
- Fix for resources not correctly bundlded on release appbundles (60b9d8c2b9 by @cortinico)
- RNGP - Honor the --active-arch-only when configuring the NDK (470f79b617 by @cortinico)
- Fixed typo in template build.gradle (38e35df47c by @Titozzz)
iOS specific
- Exclude
react-native-flipper
whenNO_FLIPPER=1
to prevent iOS build fail (f47b5b8b5d by @retyui) - Fix RCTAlertController not showing when using SceneDelegate on iOS 13.0+. (0c53420a7a)
- Handle Null Exception to Validate input in RCTAlertController and in RCTDevLoadingView (79e603c5ab by @admirsaheta)
- Fixed the potential race condition when dismissing and presentating modal (e948c79bda by @wood1986)
- Fix build errors when inheriting RCTAppDelegate in Swift modules (5eb25d2186 by @Kudo)
- OnSelectionChange() is fired before onChange() on multiline TextInput (64475aeb3b by @s77rt)
- Build: remove deprecated File.exists() method from Hermes podspec. (38e5fa6a96 by @kelset)
v0.71.0
Read the announcement blogpost here.
⚠️ Git Bash users on Windows might experience "Unable to resolve" red boxes, because of an issue with Metro (silently fails without discovering any files). It will be fixed in 0.71.1 next week, in the meantime you can set resolver.useWatchman: false
in metro.config.js
.
Breaking Changes
- Changes to Console Logging:
LogBox.ignoreLog
no longer filters console logs. This means you will start seeing logs in the console that you have silenced in LogBox. See this comment for more details. - Removed AsyncStorage and MaskedViewIOS: These components have been deprecated since version 0.59, so it’s time we remove them entirely. For alternatives, please check React Native Directory for community packages that cover those use cases.
- JSCRuntime moved to react-jsc: react-jsi is now split into react-jsc and react-jsi. If you use JSCRuntime, you will need to add react-jsc as a dependency (facebook/react-native@6b129d8).
Added
- Add flex yoga bindings of
gap
,column-gap
androw-gap
(9f3a3e13cc by @intergalacticspacehighway) - Add back deprecated PropTypes (b966d29724 by @rickhanlonii)
- Make the
prepare_package_for_release
fail if there is already a git tag with that version (850f855eb6 by @cipolleschi) - Add a C++ only TurboModule example (for Android/iOS/macOS/Windows) (d07575b1c6 by @christophpurrer)
- Enable platform-specific Codegen Specs (ab7b4d4cd8 by @cipolleschi)
- Add "option" to available role values (e3e635ef84 by @gabrieldonadel)
- Added support
Promise.any
(475310dbba by @retyui) - Log Abnormal Closes to Metro Websocket (3982a2c6bd by @NickGerleman)
BlobModule
toRCTCoreModulesClassProvider
(279cfec55f by @andrestone)- Added
mixed
value foraria-checked
. (7a19af7fb6 by @ankit-tailor) - Concurrent rendering safe implementation of ScrollViewStickyHeader (925e81ab86 by @sammy-SC)
- Add DevToolsSettingsManager (0fac9817df by @rbalicki2)
- Add enum example to Android/iOS rn-tester TurboModule (02e4fcd825 by @christophpurrer)
- React-native-codegen: add Enum Type support for iOS/Android TurboModules (745f3ee8c5 by @christophpurrer)
- Parser interface to divide parser logic. (5940d25cc1 by @cipolleschi)
- Add role prop to Text component (20718e6b8c by @gabrieldonadel)
- Introduce
useAnimatedValue
hook to make it easier working withAnimated.Value
s in function components. (e22217fe8b by @fabriziocucci) - Highlight elements on hover while mouse down for React DevTools element inspection. (94429fb037)
- Implement method bindings for gap/row-gap/column-gap (803a2978e5 by @NickGerleman)
- Implement gap/row-gap/column-gap (within the C ABI) (1373a7057b by @NickGerleman and @jacobp100)
- Add destructuredArrayIgnorePattern to eslint config (0c5ef573fe by @fwcd)
- Add aria-modal prop to basic component (f353119113 by @dakshbhardwaj)
- Add support for ImageSource and ImageRequest in the State. (d7c41361dd by @cipolleschi)
- Generate custom Native State (7490ad4a21 by @cipolleschi)
- Add support for platform-specific specs (7680bdeb4f by @cipolleschi)
- Added suppression for warnings about unused parameters in 'publish()' func (c1363984f1 by @inobelar)
- Export YGInteropSetLogger method (d9a5c66baa by @KimDaeWook)
- Add instructions about how to add tests in the OSS (75b688fba8 by @cipolleschi)
- Add YGGutter Enum (87e7912b95 by @NickGerleman)
- Add string support for aspectRatio (14c91cdf59 by @gabrieldonadel)
- Add alt prop to Image component (71fda5e0c2 by @gabrieldonadel)
- Include
this.state.bottom
when calculating new keyboard height to fix android keyboard switching (f85e2ecc40 by @pfulop) - Implement custom Native State parsing in TypeScript (bbb2fb212d by @cipolleschi)
- Implement custom Native State parsing in Flow (925b15351f by @cipolleschi)
- Add string support to the transform property (34db2d4e93 by @gabrieldonadel)
- Add
types
folder to house TypeScript types. (6b2a511cbb) - Add additional Systrace support (9cb716ff76 by @christophpurrer)
- Add space-separated string support for fontVariant (09d420707f by @gabrieldonadel)
- Add aria-modal prop to basic component (095f19a681 by @dakshbhardwaj)
- Added support for number values in fontWeight. (f1c1f8116b by @ankit-tailor)
- Add
aria-label
prop toButton
,View
,Pressable
component (720cdbc658 by @Viraj-10) - Add
aria-valuemax
,aria-valuemin
,aria-valuenow
,aria-valuetext
as alias prop toTouchableOpacity
,View
,Pressable
TouchableHighlight
TouchableBounce
TouchableWithoutFeedback
TouchableOpacity
components (e8739e962d by @dakshbhardwaj) - Add support for objectFit style of Image. (b2452ab216 by @gedeagas)
- Added aria-live alias for accessibilityLiveRegion. (7ea54a4087 by @mayank-96)
- Add aria-disabled, aria-busy, aria-checked, aria-expanded and aria-selected prop to core components (98d84e571d by @ankit-tailor)
- Add support for
userSelect
style (fc42d5bbb9 by @dakshbhardwaj) - Added a check to if
scrollEnabled
is not false, if so then fire theVirtualizedList
error (62f83a9fad) - Add proper support for fractional scrollIndex in VirtualizedList (f44dfef923 by @NickGerleman)
- Add expanded support for CSS Colors (ac1fe3b7eb by @gabrieldonadel)
- Add aria-hidden prop to Pressable, View and Touchables components (ebdb23c6e0 by @gabrieldonadel)
- Added role alias for accessibilityRole. (a50e6fb341 by @madhav23bansal)
- Added pointerEvents style equivalent to pointerEvents prop (5c109b37a4 by @cyrus25)
- Added an overlay similar to Inspector.js that allows directly selecting elements on RN from React DevTools (c52df02f84 by @tyao1)
- Add tintColor prop to Image component (7a6f0e44b2 by @gabrieldonadel)
- Make babel-plugin-codegen work for TypeScript Spec files (df0b6900ec by @RSNara)
- Add inputMode prop to TextInput component (9fac88574e by @gabrieldonadel)
- React-native-codegen: Add Enum Type support for C++ TurboModules (b444f0e44e by @christophpurrer)
- Add enterKeyHint prop to TextInput component (8c882b4f3d by @dakshbhardwaj)
- React-native-codegen: Add Union Type support for C++ TurboModules (355feafff6 by @christophpurrer)
- Add readOnly prop to TextInput component (de75a7a22e by @gabrieldonadel)
- Added ability to construct ArrayBuffers from existing memory buffers. (3bae268782 by @neildhar)
- Add ability to store and retrieve a list of MapBuffer (fc065151ce by @sshic)
- SyncCallback/AsyncCallback/AsyncPromise bridging types in C++ now allow wrapping JSI types. (610bb7f688 by @nlutsenko)
- Add types for onFocusCapture/onBlurCapture (aabb5df7ec by @NickGerleman)
- Add
returnKeyAction
prop toTextInput
component and remove usages ofblurOnSubmit
in native code and convertblurOnSubmit
toreturnKeyAction
in the JavaScript conversion layer (1e3cb91707) - Re-add support for using Yoga without exceptions (793ebf6812 by @Yannic)
Android specific
- Added Flavor Support to React Native Gradle Plugin (RNGP) (8ad86c70b6 by @cortinico)
- Add ComponentWithState in Android (b24f60f729 by @cipolleschi)
- Add support for verticalAlign style (32b6f319ba by @gabrieldonadel)
- Add tabIndex prop to View component (621f4cf3b1 by @gabrieldonadel)
- Add rows prop to TextInput component (49c9ccd3f8 by @gabrieldonadel)
- Stop special-casing Android 11+ from large form-factor
keyboardShouldPersistTaps
behavior (ef77a4218d by @NickGerleman) - Provide defaults for TurboModuleManagerDelegate and JSIModulePackage (9a2eb9089f by @cortinico)
- Expose UI_MODE_TYPE_VR_HEADSET in PlatformConstants (77c256ca91 by @NickGerleman)
- Expose
globalEvalWithSourceUrl
in production builds. (333583bfbe by @EvanBacon) - Accessibility announcement for list and grid in FlatList (463af23753 by @fabriziobertoglio1987)
- Improve OSS systrace (ccbfdd7167 by @janicduplessis)
- Un-deprecate DisplayMetrics.getWindowDisplayMetrics() method (4cbd263173 by @mdvacca)
iOS specific
- Bring back JSIDynamic and JSI (3d7b53d456 by @cipolleschi)
- Add Dynamic Type support for iOS (Paper and Fabric) (11c8bf3137)
- Add support for parsing files w/
:
in filename (714b22bb43 by @shwanton) - Download Hermes from Maven while for -stables (44e8462a03 by @cipolleschi)
anchor
option support forShare
(aeab38357f by @zhumingcheng697)- Line break strategy for Text and TextInput components (048194849b by @bang9)
- Add more extension points for RCTAppDelegate (dd607a8f2d by @cipolleschi)
- Introduce sample component which work with the native state. (1a9cceb20b by @cipolleschi)
- Add new APIs to
react_native_pods.rb
to simplify app migration (34fafb2b88 by @cipolleschi) - Test iOS template with both architectures and configurations (4352459781 by @cipolleschi)
- Add new fontVariant values: stylistic-one(ss01) -> stylistic-twenty(ss20) (163636db75)
- Added the RCTAppDelegate library (7cc2d1a249 by @cipolleschi)
- Support setting an Alert button as "preferred", to emphasize it without needing to set it as a "cancel" button. (000bbe8013 by @robbie-c)
- Added
borderCurve
style prop for smooth border radius (squircle effect) (8993ffc82e by @eric-edouard) - Automatically detect when use frameworks is used (f7b35c0d43 by @cipolleschi)
- Add compiler flag for the new Arch when enabled. (5b32348add by @cipolleschi)
- Improve Codegen Cleanup (aaa795b by @cipolleschi)
Changed
- Bump CLI to 10.0.0 and Metro to 0.73.5 (e1bca8f98c by @thymikee)
- Upgrade to
deprecated-react-native-prop-types
3.0.1: changelog (3e91415696 by @yungsters) - Upgrade Jest in React Native to ^29.2.1 (45db65be7e by @robhogan), (8f337538ae by @kelset)
- Bump
@react-native/normalize-color
to 2.1.0,@react-native-community/eslint-plugin
to 1.3.0,@react-native/babel-plugin-codegen
to 0.71.1,@react-native-community/eslint-config
to 3.2.0 and@react-native-community/eslint-plugin-specs
to 1.3.0, (8183aac0b1) - Upgraded react-devtools-core dependency to 4.26.1 (48263b8daf)
- Bump
react-native-codegen
to^0.71.3
andreact-native-gradle-plugin
to0.71.12"
(a7792da695 by @cipolleschi) - Bump Hermes for 0.71 version (4e5fc68672 by @kelset)
- Simplify Template ESLint Configuration (68d6214a18 by @NickGerleman)
- Use
'react-native'
export conditions in Jest environment (0376aa4856 by @SimenB) - Move JSCRuntime into a separate pod/prefab (f3bf4d02ab by @cipolleschi)
- Improve version checks (f12b12c999 by @cipolleschi)
- Read
.ruby-version
file inGemfile
(cb7f1b1f0b by @dcangulo) - Remove React Native version from Hermes tarball name (e36c492ace by @cipolleschi)
- RNTester: Migrate Dimensions to hooks (745e26288c by @Marcoo09)
- Do not filter errors/warnings from console (fa2842d113 by @rickhanlonii)
- RNTester: Migrate ActivityIndicator to hooks (c868d5b26c by @Marcoo09)
- Refactor codegen: Dispatch props and events from a central place. (affcfa7bde by @ZihanChen-MSFT)
- Add "EarlyJsError: " as prefix of early js error's message (be6f65660f)
- Move Jest config to use a custom react-native Jest env (cb2dcd327c by @kelset)
- Add Metro health check files to the template's
.gitignore
(19715cf4fb by @motiz88) - Ship VirtualizedList_EXPERIMENTAL (971599317b by @NickGerleman)
- Typescript: update incorrect
SwitchChangeEvent
type (5dd2f2e4b7 by @retyui) - Make
yarn
andyarn jest react-native-codegen
works on Windows with git (c4f9556f7e by @ZihanChen-MSFT) - Refactor in turbo module TypeScript codegen: process
(T)
,T|U
,T|undefined
and related stuff in a central place (00b795642a by @ZihanChen-MSFT) - Move and rename
hermes-inspector-msggen
toreact-native/hermes-inspector-msggen
(530dae8a45 by @gabrieldonadel) - Fix interface support in turbo module TypeScript codegen (component only) (8dc6bec719 by @ZihanChen-MSFT)
- Place TS Declarations Alongside Source Files (8cdc9e7f04 by @NickGerleman)
- Handle (T) and undefined properly in turbo module component codegen (205cc9bc3b by @ZihanChen-MSFT)
- Update
Clipboard
mock path (2aba3522ab by @adrianha) - Fix ImageLoader.getSize jest mock (7be829f2c9 by @elliottkember)
- Correct execution context ID in Debugger.scriptParsed event. (545366aea3 by @aeulitz)
- Don't polyfill Promise in Jest setup (f1fdc8b9b6 by @robhogan)
- Codegen: support TypeScript type
(T)
for turbo module codegen (module only) (624bdc7ec6 by @ZihanChen-MSFT) - Unify TextInput autoComplete and textContentType props (73abcba40f by @gabrieldonadel)
- Added
crossOrigin
,referrerPolicy
,width
,height
andsrcSet
props to Image Component. (47a05bc26a by @dhruvtailor7) - Copied and refactored the current devtools highlighting code from Inspector into its own module and add to the top level
AppContainer
. The effect is that the highlight stills shows without Inspector opened. (a63204800a by @tyao1) - Minor change to PropTypes error message. (7783f88d71 by @yungsters)
- Set back the
DANGER_GITHUB_API_TOKEN
. (9344c7aa5a by @cipolleschi) - Run ESLint in CI (1bba59023d by @cipolleschi)
eslint-plugin-specs
package has prepack hook that changesPACKAGE_USAGE
variable ofreact-native-modules.js
totrue
. (ee9c1a5260 by @dmytrorykun)- Attach the
.hermes-cache-key-file
to the workspace to avoid race conditions for new PR landing on Hermes and changing the head commit between the time Hermes is built and the time it has to be consumed. (ccdf9ac985 by @cipolleschi) - Build hermes when in CI and not when there is a tarball (4b51207735 by @cipolleschi)
- Make sure we can build Hermes from source when PR are opened agains -stable (361d939afd by @cipolleschi)
- Update ktfmt component on FBS:master (47548c1149 by @cgrushko)
- Add explicit React useState annotations in xplat/js (ff14ff3d92 by @pieterv)
- Improve sample app (03cb5aca3f by @pieterv)
- Mirror fbcode directory structure for container targets (10ea6fb9a3)
- Update ktfmt component on FBS:master (0538f45e45 by @cgrushko)
- Rewrite CompactValue to avoid undefined behavior from the use of a union for type-punning (e7a8d21df5 by @htpiv)
Android specific
- Bump AGP to 7.3.1 (1f42ff0815 by @cortinico)
- Bump Android compile and target SDK to 33 (394486eec5 by @makovkastar)
- Bump Soloader to 0.10.4 (1237952d07 by @simpleton)
- Rename
POST_NOTIFICATION
toPOST_NOTIFICATIONS
(910a750fbc by @dcangulo) - Void the Maven coordinates for react-native and hermes-engine (55b1670aa6 by @cortinico)
- Provide easy registration of C++ TurboModules in rn-tester Android (9cb02613e6 by @christophpurrer)
- Add feature flag enableAtomicRegisterSegment (f207cfddf3)
- Update the template to load the correct JS engine at runtime (2097278d2a by @cortinico)
- Do not import/use the deprecated ReactFlipperPlugin (07252b81f6 by @cortinico)
- Update the template to use RNGP (c96c76eb91 by @cortinico)
- Let RNGP set buildConfigFields for New Architecture and Hermes (7d2f48c97d by @cortinico)
- Hide the C++/Cmake configuration from user space inside the framework (c9e6a6056d by @cortinico)
- Encapsulate the prefab configuration for consumers (b39e77b3d7 by @cortinico)
- Cleanup the Android template after prefab support (0b4417b43f by @cortinico)
- Simplify Accessibility Heading role implementation. (353b1b0f8b by @blavalla)
- Update the OnLoad.cpp to use the facebook::react namespace (aba82a503d by @cortinico)
- Remove internal buck rule arg for robolectric tests (59dc7f1b20)
- Further simplify the New App Template by don't requiring the dynamic library name (59ae0487ce by @cortinico)
- Update the template to Reduce the amount of C++ code in user space for New Architecture (b0aba1b6fa by @cortinico)
- Reduce the amount of C++ code in user space for New Architecture (e89bd4a375 by @cortinico)
- Move setRootViewTag to earlier when RootView is created (4d642a2250 by @sshic)
- Replace Folly with MapBuffer for passing js error data (e874e5facb by @sshic)
- Simplify the template for New Architecture using the .defaults package (33bd2f6eae by @cortinico)
- Enable -Wpedantic in OSS Android Targets (06b55a3d04 by @NickGerleman)
- Do not load Flipper via reflection (9214da1238 by @cortinico)
- Collapse catch blocks in template (a379879adf by @danilobuerger)
- Bump git checkout cache key (fourth time) (41a80f2ee2 by @kelset)
- Replace Toast with Log.w on ReactImageView when null URL specified (30411ae1a4)
- Views with overflow: hidden and borderRadius: >0 now render anti-aliased borders. (7708cdccef)
- Expose react_render_animations via prefab. (98ad3996c8 by @cortinico)
- Remove unnecessary repositories{} block from top level build.gradle (f65dfa86ab by @cortinico)
- Fix prefab prefix for fabricjni (621d901e10 by @cortinico)
- De-bump AGP to 7.3.1 and do not use addGeneratedSourceDirectory (caa79b7c01 by @cortinico)
iOS specific
- Fix imports in React Bridging for Old Arch and frameworks (c5de1eb1ba by @cipolleschi)
- Abort pod install if bad HERMES_ENGINE_TARBALL_PATH is set. (27e7295ca7)
- Hermes is integrated into Xcode build. (6b8e13f53c)
- Display a RedBox with the JS stack (instead of native stack) when an unhandled JS exceptions occurs (ff398e4e26 by @p-sun)
- Resolve JSI ODR violation, make hermes-engine the JSI provider when Hermes is enabled (a68c418082 by @hramos)
- The JSC Runtime is now provided by the React-jsc Pod instead of React-jsi. Libraries that declared a dependency on React-jsi in order to specifically create a JSC runtime (
makeJSCRuntime()
) will need to add React-jsc to their dependencies. (6b129d81ed by @hramos) - Moved JSIDynamic out of React-jsi and into React-jsidynamic (0db5178688 by @hramos)
- Do not load Hermes inspector in release builds (2a21d5a28e by @hramos)
- Remove debugger from Hermes when building for release (2fc44ac8e1 by @hramos)
- Use debug Hermes builds by default (ce4aa93173 by @hramos)
- Add function to simplify podspecs (82e9c6ad61 by @cipolleschi)
- Enable pedantic warnings in C++ podspecs (545c82b490 by @NickGerleman)
- Cleanup codegen build folder before installing the pods (0e316ec671 by @cipolleschi)
- Properly support both libraries and use_frameworks (c6fa633597 by @cipolleschi)
- Add link group label to talkios deps (b33961d7a0)
- Add link group label to fbios deps (065db683a2)
- Use an SDKRoot based Foundation framework (ee4ce2df2f by @chatura-atapattu)
Removed
- remove AsyncStorage from JS (20eeb1bfe3 by @hoxyq)
- Remove VirtualizedList
listKey
prop (010da67bef by @NickGerleman) - Remove MaskedViewIOS (a67360b0f3 by @sokolnickim)
- Back out parsing and generation of Custom Native State from Codegen (62da9b8ce2 by @cipolleschi)
- Back out components with native state in RNTester (aace6626c1 by @cipolleschi)
react-native/eslint-plugin
no longer provides theerror-subclass-name
rule. (4f83498462 by @yungsters)react-native/eslint-plugin
no longer provides theno-haste-imports
rule. (1ec69b1823 by @yungsters)- Remove listKey from TS typings (773615bc9d by @NickGerleman)
- Remove usages of listKey (bc5cb7cd79 by @NickGerleman)
- Remove unneed/obsolete job (8e3b62019e by @kelset)
- Remove flexlayout from react-native (bf05df1723 by @NickGerleman)
- Remove remaining TV_OS fragments (089684ee56 by @christophpurrer)
Android specific
- Removed
AsyncStorage
module (5738fe6426 by @hoxyq) - Deprecate react.gradle (af6aafff90 by @cortinico)
- Removed deprecated UIImplementationProvider (e7d7563195 by @javache)
- Cleanup Buck usages from New App Template (32fc551c55 by @cortinico)
iOS specific
- Removed
AsyncStorage
module (4de2aaba50 by @hoxyq) - Remove
HERMES_BUILD_FROM_SOURCE
flag (138af74e3f by @cipolleschi) - Removed
ImagePickerIOS
module native sources (d03a29ce5f by @hoxyq)
Fixed
- Fix TS Type for measureLayout optional parameter (5928144302 by @NickGerleman)
- Allow GNU coreutils to be used to build projects (f5e5274e6a by @shreeve)
- Reference App.tsx vs App.js in text of new typescript template (81e441ae8a by @mikehardy)
- Fix incorrect height when gap causes main axis to overflow and cross-axis is stretched (1aa157b196 by @NickGerleman)
- Codegen for C++ TurboModules of optional method arguments was incorrect (e81c98c842 by @javache)
- Fix incorrect height when gap causes main axis to overflow and cross-axis is stretched (1aa157b196 by @NickGerleman)
- Fixup TS Organization (5d26ceaa23 by @NickGerleman)
- Fixed typo syncronization -> synchronization (ad5e3f6b9a by @pruthvip)
- react-native-codegen : Add Map / indexed object support for TypeScript parser (87c356d56c by @christophpurrer)
- Add wanted dependencies to remove yarn warnings (cd25fb3240 by @kelset)
- Fixed crash when converting JS symbol to folly::dynamic (428feb2f76 by @kassens)
- Error reporting for module errors (af0e6cdae5 by @rickhanlonii)
- Support properly sending BigInts and Symbols over the Chrome DevTools Protocol. (7208d15dce)
- Fixed React DevTools element highlighting throwing redbox errors (c64f25ac85)
- Fix require cycle warning in VirtualizedList (49cb7f28c8 by @motiz88)
- Pressability for text with only
onPressIn
/onPressOut
props (f1f7824203) - Load react-native.config.js from correct path during codegen (74fda10702 by @krystofwoldrich)
- Remove usage of the codegen spec filtering until we publish a new version of the codegen. (ae3dd54fae by @cipolleschi)
- Fix nightly build issues (93c3effc72 by @Kudo)
- Properly parse negative values (f3c98c5fa2 by @cipolleschi)
- Fixup Yoga Enum Generator (5f9689a0d0 by @NickGerleman)
- Fix remaining NDK comment for new architecture (fb1f53f7dc by @ken0nek)
- Fixed missing Pressable hover props in typescript definition (6ba5fa946d by @Saadnajmi)
- Remove Android.mk from internal Gradle task (d0df6afe76 by @Sunbreak)
- In RN devtools, call that method, and then set component state to not inspecting. (bfb36c2163 by @tyao1)
- Enable the
react-native-codegen
tests in the OSS. (00458c9410 by @cipolleschi) - Make style pointerEvents take priority over pointerEvents prop. FIxes requested changes in https://github.com/facebook/react-native/issues/34586 (a789ead545 by @cyrus25)
- Change Wrapper of
InspectorPanel
fromView
toSafeAreaView
(afad68f1a8 by @raykle) - Typo in AssetSourceResolver (a45eeea17a by @dhruvtailor7)
- Run ExceptionsManager unit tests in both DEV and prod mode (a154207371 by @GijsWeterings)
- Avoid keypress event when text is pasted on macOS (477663cba8 by @christophpurrer)
- Flipper now supports custom Xcode build configuration names (1bc9ddbce3 by @scarlac)
- Make clang-format work in M1 (Apple Silicon) (377aa7a30f by @christophpurrer)
- Using SOURCEMAP_FILE during xcode build phase with Hermes enabled (a98da32229 by @kidroca)
- Remove compiler-specific syntax. (33dbb6c40c by @chiaramooney)
- Fix reload hang after debugger break and continue (60e7eb4d53 by @aeulitz)
- Fix FlatList not calling render items for nullish values when numColumns > 1 (cc19cdcdbe by @AntoineDoubovetzky)
- Fix macro errors for Windows. (fc26dbfce0 by @chiaramooney)
- Adding grid role to ViewAccessibility to fix flow errors. (5ddb9977e6 by @fabriziobertoglio1987)
- Fix: use REACT_NATIVE_CI instead of CI envvar (ed16fdbbb8 by @dmytrorykun)
- Bypass tag check in dry run (ba1a9defbb by @cipolleschi)
- Fix removal of version from Hermes tarball, part 2 (6107793fda by @kelset)
- Fix removal of version from Hermes tarball (e809e4b1ec by @kelset)
- Better fix for param (32931b19b1 by @kelset)
- Fix publish npm post strict (0f72abfc03 by @kelset)
- Fix some issues exposed when making function statics sealed (662115077a by @gkz)
- Fix measure inner dimensions (11f47432ff by @kinarobin)
- Annotate empty objects in xplat (abb21dd908 by @SamChou19815)
- Fix comment typo 'layed out' to 'laid out' (108c876206 by @lwyj123)
- Fix missing dll exports (619d115822 by @justjavac)
- Fix FillRateHelper Accessing -1 Frame (052617611d by @NickGerleman)
- Attempt fix #2 for
cellsAroundViewport
reaching out of bounds (0ef770587f by @NickGerleman) - Attempt fix for
cellsAroundViewport
reaching out of bounds (7aa203beda by @NickGerleman) - Reland D38460202 and fix tests (c4ddaa8fdb by @sshic)
- Add missing class annotations and lock xplat/js (0ccbe5f704 by @pieterv)
- Add missing class annotations xplat/js [suppressions] (2e649006f1 by @pieterv)
- Add missing class annotations xplat/js (ee3d3c248d by @pieterv)
- Apply lint updates from buildifier in xplat (a70354df12 by @chatura-atapattu)
- fix: remove gap if its last element in line (fix flex gap extra spacing when children determine parents main axis size)( by @intergalacticspacehighway)
- Add missing AccessibilityInfo Types to TS Typings (dc1b20d495 by @NickGerleman)
- Fix Errors with TypeScript Tests (ed08edd966 by @NickGerleman)
- Add missing VirtualizedList Imperative Types (de1136359c by @NickGerleman)
- Fix virtual list type (1bd3831cc5 by @aliakbarazizi)
- Add missing types for AppRegistry (213c26c23d by @NickGerleman)
- Add type for RootTagContext (fd28032be6 by @NickGerleman)
- Add missing types to PushNotificationIOS (f04f067aae by @NickGerleman)
- Fix missing animation type (CircleCI Break) (696f4b5c39 by @NickGerleman)
- Fix types for deprecated scrollTo fields (f9ab91c3ab by @NickGerleman)
- Fix Vibration.vibrate() allowing null params (9b7618856f by @NickGerleman)
- Mark scrollToEnd animated as optional (8770b2724a by @NickGerleman)
- Fix type for StyleSheet.compose() (754524ea9d by @NickGerleman)
- Remove testID from TS ViewStyle (172f23a2ee by @NickGerleman)
- Add missing type for AnimatedValue.resetAnimation() and AnimatedValue.animate() (1b5066c21d by @NickGerleman)
Android specific
findPackageJsonFile
should returnnull
ifpackage.json
does not exist (913ebd207c by @tido64)- Fix crash on initialize modal (15656342a8 by @alpha0010)
- Fix Android autolinking failing because of not expanded variable (4c1d5ad9c6 by @kkafar)
- On instance destroy, websockets are correctly closed (b5ea5a2c4d by @javache)
- Sets the namespace via Gradle and not via AndroidManifest (cec9a34f6c by @cortinico)
- RNGP - Do the .so cleanup using pickFirst and exclude (2ff08e8bd8 by @cortinico)
- Fixed an issue on Android API 31+ where modals would turn status bar icons white by default (5c5220a46d by @Abbondanzo)
- TextInputs may not get focused when switching inputs in a ScrollView (370bbd705b by @javache)
- Fix react.gradle's detectCliPath's for finding the path from Node (121184bb8f by @liamjones)
- Fix crash on release versions after AGP 7.3 bump (6125f1f866 by @cortinico)
- Gracefully handle crash if no WebView provider is found on the device (3f3394a566 by @rachitmishra)
- Text with onPress or onLongPress handler is not accessible with TalkBack (f3847eeec2 by @fabriziobertoglio1987)
- Align android image style / source logic with ios (6bdcb49966 by @danilobuerger)
- Emit the right bubbling event for ReactSliderEvent (b7e7e7ff1e)
- Typo in build.gradle (ed21a3e20f by @jeremybarbet)
- Border width top/bottom not matching the border radius (cd6a91343e by @hurali97)
- Re-implement accessibilityHint on Android to use AccessibililltyNodeInfo#setToolTipText instead of contentDescription (0b70b38547 by @fabriziobertoglio1987)
- Removed unused variable
NODE_MODULES_DIR
frombuild.gradle
in app template (50b1270298 by @tomekzaw) - AccessibilityLabelledBy use DynamicFromObject to parse String to Dynamic (9f4358142e by @fabriziobertoglio1987)
- Bug with view transforms when view recycling is enabled (e0be14a310 by @javache)
- Use WindowInsetsCompat for Keyboard Events (1e48274223 by @NickGerleman)
- Adding importantForAccessibility for Text, Button, ImageBackground (62021eb8d1 by @fabriziobertoglio1987)
- Fix regression when setting shadow node properties. (a142a78473 by @rshest)
- Fix occasionally incorrect ScrollView fling behavior (c7c263dda8 by @dhleong)
- Migrate
needsCustomLayoutForChildren
check to the new architecture (e24ce708ab by @grahammendick) - Remove extra indexOf call in BackHandler.removeEventListener (14c207d9e1 by @vitalii-tb)
- Fix such that when the scrollviews call
onChildStartedNativeGesture
, they appropriately callonChildEndedNativeGesture
to unlock the native gesture such thatJSTouchDispatcher
orJSPointerDispatcher
will continue to emit events. (143a0f74b8) - Fix
AttributedString
comparison logic for TextInput state updates (089c9a5c9c by @NickGerleman) - Invoke closeAndReleaseSonatypeStagingRepository in the publish gradle invocation (e4f23f4783 by @cortinico)
- Do not eat taps/clicks in ScrollView when soft-keyboard is detached from viewport (fd1e82a10f by @NickGerleman)
- Add missing class annotations xplat/js (c687dd3a77 by @pieterv)
iOS specific
- Don't use the internal
native_modules.rb
script yet, as it hides a hard-coded path (4df793f75b by @tido64) - Exclude redirector to
LongLivedObject.h
from ReactCommon podspec (dd0bf83481 by @cipolleschi) - Fix incorrect codegen CLI paths in monorepo projects (4a4cceef25 by @byCedric)
- Remove hermesc build dir for non-Hermes build. (c05e6c47df)
- Remove
Copy Hermes Framework
script phase for non-Hermes build. (7f60bcceac) - Make sure that the React-Codegen.podspec does not enforce specific versions of its dependencies. (bc074a300d by @cipolleschi)
- Various fixes for Hermes build-from-source behaviour. (5dd0f7327b)
- Correctly set -DCMAKE_BUILD_TYPE for Hermes on iOS (c63133202b by @cortinico)
- Https://github.com/facebook/react-native/pull/35047 reverted. (bbd432e999)
- Make sure that libraries created with
install_modules_dependencies
has the right C++ version. (40ad31eacf by @cipolleschi) - Make ManagedObjectWrapper compile on macOS (76c7ccaa60 by @christophpurrer)
- Map
accessibilityRole: grid
toUIAccessibilityTraitNone
(f3d9f2ea23 by @NickGerleman) - Remove unused #import <UIKit/UIGestureRecognizerSubclass.h> import which breaks macOS (84737e0069 by @christophpurrer)
- Fix Text.allowFontScaling prop in the new architecture (e9b89b5ff2 by @sammy-SC)
- Make the nightly work with the proper Hermes tarball (1546666a6d by @cipolleschi)
- Add MARKETING_VERSION to template project (33e140fd05 by @kelset)
- Automatically following version on xcode. (dcd21143bc by @erfinbadrian)
- Fix race condition in RCTLoggingTests integration tests (540ae39487)
- Add missing react/renderer/mapbuffer module to podspec (00458637da)
- RedBox title font by using a monospace font on iOS +13. (5933b6a3ba by @EvanBacon)
- Update usage of UIApplication.sharedApplication in RCTKeyCommands (5e79fa8441 by @evoactivity)
- Change hermes logic in build scripts for Apple to use the correct files (cc13b0273f by @kelset)
- Fix error in the Codegen template for ThirdPartyFabricComponentsProvider (2f6b2127d9 by @gispada)
HERMES_ENABLED
check fixed in react-native-xcode.sh (8745a148b6 by @nvojnovic)- Make sure to turn on the
RCT_NEW_ACRH_ENABLED
flag (f31134af7d by @cipolleschi) - Fix
Alert
not showing in an app usingUIScene
(153aedce41 by @tido64) - Image Component will not update correctly when passing in new url (5c211f2bce by @matpaul)
- Fixed Time.h:52:17: error when a folder in the file path has a space (9e169da3ae by @gaberogan)
- Fix: RCTAlertController's UserInterfaceStyle to follow root window (18542b6ef5 by @vonovak)
- CI broken due to Hermes Commit (ff7f5a332f by @cipolleschi)
- Typo in AppDelegate.mm (0a59c284a9 by @jeremybarbet)
- When source maps are enabled, clean up temporary files from the build directory. Reduces bundle size by at least 1MB. (e0a71fc7b5 by @dmytrorykun)
- USE_HERMES envvar check fixed in react-native-xcode.sh. Now source maps are generated by default. (03de19745e by @dmytrorykun)
- Fix keyboard accessory button not triggering onSubmitEditing (98d74d6eb9)
- Possible fix for convertIdToFollyDynamic crash in RCTBaseTextInputView and RCTEventDispatcher (8b174a57c8 by @christophpurrer)
- Fix exception thrown by [RCTTextView description] on macOS (7db6c080f5 by @christophpurrer)
- Allow preferred Alert button regardless of the style (653a19a8cd by @danilobuerger)
- Fix
contentInsetAdjustmentBehavior
set toautomatic
onScrollView
in the new architecture (27fe6f1079 by @grahammendick) - Use readlink instead of realpath in packager.sh (698b14789c by @dminkovsky)
- Fix cocoapods cli native_modules require for pnpm node_modules (af3dfbaa47 by @danilobuerger)
- Use the right logic for build from source (49c0267b66 by @cipolleschi)
- Remove the hermes engine cache in the clean script (9979e38c70 by @kelset)
- Make sure to export a single version for hermes artifacts and wipe Podfile.lock while in release (41bf725ada by @cipolleschi)
- Let React Native decide the Hermes version to use in the Codegen (becb47ccb6 by @cipolleschi)
- Fix copy-hermes-xcode.sh (fc1dbb8f0b by @dmytrorykun)
- Merge pull request #35188 from dmytrorykun/export-D40979350 (151498a122 by @cipolleschi)
- Center text if line height isn't 0 (70cc27c901 by @sammy-SC)
- Fix cleanup not working on template app (ce3eefe12c by @cipolleschi)
Security
- Bump terser minor version to mitigate CVE-2022-25858 (743f9ff63b by @GijsWeterings)
v0.70.15
Changed
- BUMP CLI to v9.3.5 (cb170efdd3 by @hurali97)
- Bump react-devtools-core to 4.27.7 (abb4a2bddd by @lunaleaps)
- Bump hermes-engine (5b95254359 by @cipolleschi)
Fixed
iOS specific
- Migrate boost download url away from JFrog (e8e059a977 by @cipolleschi)
v0.70.14
Changed
- Update JSCodeshift to 0.14 (5a695dd by @stianjensen)
Fixed
iOS specific
- Fix Gemfile to set the max version of Active support to 7.0.8 (a1a220b by @cipolleschi)
- Update Xcode 15 patches to be more robust (735d06c01f by @cipolleschi)
- Make Hermes build properly with Xcode 15 (5f4a091 by @cipolleschi)
v0.70.13
Fixed
- Fix: bumped CLI to address broken backward compatibility (549ff6380a by @Titozzz)
v0.70.12
Fixed
iOS specific
- Prefer
Content-Location
header in bundle response as JS source URL (671ea383fe by @robhogan)
v0.70.11
Changed
- Bump CLI to 9.3.3 and Metro do 0.72.4 (2a9d71dc34 by @kelset) to address https://github.com/facebook/react-native/issues/36794
v0.70.10
Fixed
Android specific
- Prevent crash on OnePlus/Oppo devices in runAnimationStep (c05d822f7d by @hsource)
iOS specific
- USE_HERMES envvar check fixed in react-native-xcode.sh. (61106ac680) by @kidroca)
- USE_HERMES envvar check fixed in react-native-xcode.sh. Now source maps are generated by default. (8ad63714) by @dmytrorykun)
- USE_HERMES envvar check fixed in react-native-xcode.sh. (4108b3) by @dmytrorykun)
- When source maps are enabled, clean up temporary files from the build directory. Reduces bundle size by at least 1MB. (bad3949) by @dmytrorykun)
- Make 0.70 compatible with Xcode 15 (thanks to @AlexanderEggers for the commit in main) (c5e549e694)
v0.70.9
Changed
- Update Hermes to
hermes-2023-04-13-RNv0.70.8-c9b539bf3d7bfa4143ff1a5751886c7b2dd728a2
(7b1441730b), contains:
Fixed
Android specific
- Resolved bug with Text components in new arch losing text alignment state. (31a8e92cad by @javache)
- Mimimize EditText Spans 9/9: Remove
addSpansForMeasurement()
(92b8981499 by @NickGerleman) - Minimize EditText Spans 8/N: CustomStyleSpan (b384bb613b by @NickGerleman)
- Minimize EditText Spans 6/N: letterSpacing (5791cf1f7b by @NickGerleman)
- Minimize Spans 5/N: Strikethrough and Underline (0869ea29db by @NickGerleman)
- Minimize Spans 4/N: ReactForegroundColorSpan (8c9c8ba5ad by @NickGerleman)
- Minimize Spans 3/N: ReactBackgroundColorSpan (cc0ba57ea4 by @NickGerleman)
- Minimize Spans 1/N: Fix precedence (1743dd7ab4 by @NickGerleman)
- Fix measurement of uncontrolled TextInput after edit (8a0fe30591 by @NickGerleman)
iOS specific
v0.70.8
Changed
iOS specific
- Relax Ruby requirements (e3a5fbe72f by @cipolleschi)
Fixed
iOS specific
- Fix React Codegen podspec to build on Xcode 14.3 (34f3794f18 by @cipolleschi)
- Blob data is no longer prematurely deallocated when using blob.slice (36cc71ab36 by @awinograd)
v0.70.7
Fixed
Android specific
- Mitigation for Samsung TextInput Hangs (be69c8b5a7 by @NickGerleman)
iOS Specific
- Fix the potential race condition when dismissing and presenting modal (279fb52e03 by @wood1986)
Added
Android Specific
- Add
POST_NOTIFICATIONS
and deprecatePOST_NOTIFICATION
(b5280bbc93 by @dcangulo)
v0.70.6
Fixed
- Fixed regression: @jest/create-cache-key-function dependency was inadvertedly bumped to 29.x. We are bringing it back to 27.0.1. (fb0e88beb9 by @kelset)
Changed
- Bump version of Promise from 8.0.3 to 8.3.0, enabling
Promise.allSettled
andPromise.any
(475310dbba by @retyui) - Bump CLI to 9.3.2 (9bcc5e0373 by @kelset)
iOS specific
- Cleanup codegen build folder before installing the pods (0e316ec671 by @cipolleschi)
v0.70.5
Fixed
- Force dependencies resolution to minor series for 0.70 (59407a4d34 by @cortinico)
v0.70.4
Changed
- Bump CLI to 9.2.1 (a24c8946e0 by @kelset)
- Bump react-native-codegen to 0.70.6 (866021b58c by @dmytrorykun)
Fixed
- Load react-native.config.js from correct path during codegen (74fda10702 by @krystofwoldrich)
iOS specific
- Fix error in the Codegen template for ThirdPartyFabricComponentsProvider (2f6b2127d9 by @gispada)
- Center text if line height isn't 0 (70cc27c901 by @sammy-SC)
v0.70.3
Fixed
- Stop styles from being reset when detaching Animated.Values in old renderer (2f58e52006 by @javache)
- Revert "Fix TextInput dropping text when used as uncontrolled component with
defaultValue
" to fix TextInputs not being settable to undefined programmatically (e2645a5) by Garrett Forbes Monroe
Android specific
- Use NMake generator for Hermes build on Windows (9d08d55bbe by @mganandraj)
- Fixing failure building RN codegen CLI on Windows (85c0c0f21f by @mganandraj)
iOS specific
- Add xcode 14 workaround (turn off signing resource bundles) for
React-Core
(967de03f30 by @kelset)
v0.70.2
Added
iOS specific
- Add support for "Prefer Cross-Fade Transitions" into AccessibilityInfo (be7c50fefd by @gabrieldonadel)
Changed
- Bump CLI to 9.1.3 and Metro to 0.72.3 (f164556037 by @kelset)
Fixed
- Inform ScrollView of Keyboard Events Before Mount (26d148029c by @NickGerleman)
Android specific
- Fix port as -1 if dev server without specifying port on Android (3d7e1380b4 by @Kudo)
v0.70.1
Added
- Add more debugging settings for HermesExecutorFactory (32d12e89f8 by @Kudo)
- Support TypeScript array types for turbo module (component only) (33d1291e1a by @ZihanChen-MSFT)
Changed
- Accept TypeScript type
T | null | undefined
as a maybe type of T in turbo module. (9ecd203eec by @ZihanChen-MSFT) - Bump react-native-gradle-plugin to 0.70.3 (e33633644c by @dmytrorykun)
- Bump react-native-codegen to 0.70.5 (6a8c38eef2 by @dmytrorykun)
- Hermes version bump for 0.70.1 (5132211228 by @dmytrorykun)
Fixed
- Fix hermes profiler (81564c1a3d by @janicduplessis)
Android specific
- Support PlatformColor in borderColor (2d5db284b0 by @danilobuerger)
- Avoid crash in ForwardingCookieHandler if webview is disabled (5451cd48bd by @Pajn)
- Correctly resolve classes with FindClass(..) (361b310bcc by @evancharlton)
iOS specific
- Fix KeyboardAvoidingView height when "Prefer Cross-Fade Transitions" is enabled (4b9382c250 by @gabrieldonadel)
- Fix React module build error with swift integration on new architecture mode (3afef3c167 by @Kudo)
- Fix ios pod install error (0cae4959b7 by @Romick2005)
0.70.0
Breaking
- Remove jest/preprocessor from the react-native package (0301cb285b by @motiz88)
- Remove nonstandard Promise.prototype.done (018d5cf985 by @motiz88)
Added
- Support TypeScript array types for turbo module (module only) (f0c4c291e1 by @ZihanChen-MSFT)
- Added files for
avn
,nodenv
, and other managers that set the node.js version in reactive native project including testing (933fbb1b2b by @ramonmedel) - Support BigInt in Hermes (11bae63bb1 by @jpporto)
- The old Hermes instrumented stats migrated to the new one (c37f719567 by @jpporto)
- Modified getDefaultJSExecutorFactory method (87cfd386cb by @KunalFarmah98)
EventEmitter#emit
now freezes the set of listeners before iterating over them, meaning listeners that are added or removed will not affect that iteration. (e5c5dcd9e2 by @yungsters)- Added File and Blob globals to eslint community config (d881c87231 by @shamilovtim)
- C++ TurboModule methods can now use mixed types (3c569f546c by @appden)
- Add useNativeDriver as a param for setValue for Animated (73191edb72 by @genkikondo)
- Add
Animated.Numeric
Flow type (9eb7629ac6 by @motiz88) - Add LTI annotations to function params (c940eb0c49, e7a4dbcefc, d96744e277 by @pieterv)
Android specific
- Accessibility announcement for list and grid in FlatList (2d5882132f, 105a2397b6 by @fabriziobertoglio1987)
- Add READ_VOICEMAIL and WRITE_VOICEMAIL permissions to PermisionsAndroid library. (8a2be3e143 by @zolbooo)
- Add POST_NOTIFICATIONS, NEARBY_WIFI_DEVICES permission (0a854c7c8b by @vincent-paing)
- Extend the React Native Gradle plugin to accept a config from package.json (5f3c5aa529 by @cortinico)
- Ability to pass a Typeface object to ReactFontManager in addition to a font resource ID (e2dd2e2a6e by @thurn)
- Option to enable lazyViewManager support with
ViewManagerOnDemandReactPackage
(d4b59cd9d0 by @javache) - Support for dataUri in form data (c663c0ec9d by @hetanthakkar1)
- Add android-only prop documentation at the TextInput js level. (f2e23215ca)
- Update template to gitignore
android/app/.cxx
(542d43df9d by @leotm)
iOS specific
- Add Mac Catalyst compatibility (can be enabled in Podfile) (2fb6a3393d by @Arkkeeper)
- Enabled Hermes Intl (3fa3aeba93 by @neildhar)
- HTTP Response headers added to the error object passed to JS code. (9eb2826f9b)
- Add userInterfaceStyle to Alert to override user interface style for iOS 13+ (47bd78f64f by @luoxuhai)
- Add function to cleanup codegen folders (71692889b0 by @cipolleschi)
- Cocoapods function to add the
CLANG_CXX_LANGUAGE_STANDARD
to all the targets if needed (ca8174e15f by @f-meloni) - Support codegen from a single folder (05aaba9514 by @cipolleschi)
- Run script phases tests in CI (c171a6e157 by @cipolleschi)
Changed
- Bump React Native Codegen to 0.70.0 (a22ceecc84 by @dmytrorykun, 2a274c1a08 by @cortinico, ce4246a05c by @dmytrorykun)
- Upgrade RN CLI to v9.0.0, Metro to 0.72.1 (0c2fe96998 by @thymikee, 7e580b97bf by @kelset, c504d038c4 by @thymikee, f1d624823f by @kelset, 2b49ac6f8b by @thymikee)
- Doc: fix minimum iOS version in requirements section (ec3c8f4380 by @Simon-TechForm)
- Remove "Early" in Js error reporting pipeline (0646551d76 by @sshic)
- Update @react-native/eslint-plugin-specs to 0.70.0 (d07fae9b23, afd76f69c7 by @dmytrorykun, ea8d8e2f49 by @cortinico)
- Do not depend on hermes-engine NPM package anymore (78cd689f9a by @cortinico)
- Add ability to pass
ItemSeparatorComponent
as React Element (5854b11bf9 by @retyui) - Hermes version bump. (0b4b7774e2 by @dmytrorykun, 8c682ddd59 by @dmytrorykun, eb6767813a by @cortinico)
- Codemod
{...null}
to{}
in xplat/js (f392ba6725 by @gkz) - Fix TextInput dropping text when used as uncontrolled component with
defaultValue
(51f49ca998) - Suppress errors ahead of launch (67e12a19cb by @gkz)
- Suppress missing 'this' annotations (6c563a507f by @pieterv)
- Suppress missing annotations (66c6a75650 by @pieterv)
- Use RuntimeConfig instead of VM Experiment Flag to set up the micro task queue. (753038cf34 by @fbmal7)
- Update direct Metro dependencies to 0.72.0 (05dcebc211 by @kelset, 64788cc9fe by @huntie, bdeb4e0655 by @jacdebug, 894f652639 by @robhogan, 08ebc1cfd8 by @arushikesarwani94)
- ECOSYSTEM.md: update Partner entries (5471afeebf by @Simek)
- Move ScrollView's contentOffset to common props (7c581f3d30 by @genkikondo)
- Upgrade react-native-gradle-plugin to 0.70.2 (1518f838b7, 2176173dcc by @dmytrorykun)
- Update a few metro deps as follow up from the commit from main (7c7ba1babd by @kelset)
Android specific
- Bump Android Gradle Plugin to 7.2.1 (53c8fc9488 by @leotm, c274456e5b by @dulmandakh)
- Rename NativeModuleCallExceptionHandler to JSExceptionHandler for broader usage (b6f7689d70 by @sshic)
- Simplify the Android.mk file in the App Template (7fb0bb40d2 by @cortinico)
- Make Hermes the default engine on Android (a7db8df207 by @cortinico)
- Revamp touch event dispatching methods (089ff4555a by @sshic)
- Demonstrating Dark Mode correctly in the
StatusBar
for the starter template App. (763dc52387 by @mrbrentkelly) - Bump Gradle to 7.5.0 (5c8186623a by @leotm, 99e7373dd2 by @dulmandakh)
- Generalized the return type of ViewManagerOnDemandReactPackage.getViewManagerNames (51e029ec3c by @javache)
- Don't assert on current activity when call startActivityForResult (bf6884dc90 by @sshic)
- Adapt template to new architecture autolinking on Android (9ad7cbc3eb by @thymikee)
- Replaced reactnativeutilsjni with reactnativejni in the build process to reduce size (54a4fcbfdc by @SparshaSaha)
- Bump Soloader to 0.10.4 (b9adf2db20 by @mikehardy)
- Update the new app template to use CMake instead of Android.mk (dfd7f70eff by @cortinico)
- Refactored usage of kotlin plugin (be35c6dafb by @hurali97)
- Bump Gradle to 7.5.1 (7a911e0730 by @AlexanderEggers)
- Fix error of release builds with Hermes enabled for Windows users (7fcdb9d9d8 by @JoseLion)
iOS specific
- Move and test Hermes setup from react_native_pods script into a dedicated file (468b86bd37 by @cipolleschi)
- Use the correct operator to decide whether Hermes is enabled or not. (61488449b9 by @cipolleschi)
- Hermes is now the default engine on iOS. This setting is controlled via
flags[:hermes_enabled]
in the Podfile. (1115bc77db by @hramos) - Move LocalPodspecPatch to dedicated file (8fe2b591c7 by @cipolleschi)
- Move the
modify_flags_for_new_architecture
method to separate ruby file (71da21243c by @cipolleschi) - Refactoring part of the react_native_pods.rb script (4f732ba9ee, 7a2704455f by @cipolleschi)
- When Hermes is enabled, it will use the same copy of JSI as React Native (340612a200 by @hramos)
- Move
use_flipper
logic insideuse_react_native
and simplify the Flipper dependencies logic (0bd5239553 by @f-meloni) - Export
flipper.rb
script file (e07a7eb16b by @cipolleschi) - Use
outputDir
as base directory for the codegen and remove the possibility to customize the intermediate path. The generated code requires specific paths in the#include
directive. (e4d0153a67 by @cipolleschi) - Refactor part of the codegen scripts and add tests. (0465c3fd10, 305a054865 by @cipolleschi)
- CodeGen now supports the
"all"
library type. (6718500eaa by @cipolleschi) - Fix the test_ios_unit test (fdbe4719e2 by @cipolleschi)
- Update Podfile to allow
PRODUCTION=1 pod install
(77752fc403 by @leotm) - Destruct use_reactnative parameters and ad ddocumentation (79a37e5a88 by @cipolleschi)
- Move codegen in separate files (7d069b2583 by @cipolleschi)
- Silence warning due to react-native internal details. (a4599225f5 by @cipolleschi)
Removed
- Remove previously deprecated Transform style-attribute props (7cfd77debd by @Zachinquarantine)
- Remove deprecated
isTVOS
constant. (6075d64acf by @Zachinquarantine) - The diffs renames the required variable which was causing conflicts in names with Apple core SDK's (086c13dd5f by @arinjay)
- Removed
EventEmitter.prototype.removeSubscription
method. (870755fa7e by @yungsters) - Remove deprecated removeListener methods (2596b2f695 by @matinzd)
- Remove APPLETVOS variants from BUCk targets. (cf2e27c388 by @d16r)
iOS specific
- Remove
emulateUnlessSupported
(c73e021a4b by @ken0nek) - Remove USE_CODEGEN_DISCOVERY flag (2e720c3610 by @cipolleschi)
Fixed
- Throw JSINativeException from asHostObject (ef6ab3f5ca by @neildhar)
- Use new Babel parser instead of deprecated one (97291bfa31 by @Kerumen)
- Fixed a crash on deserialization of props when using 'px'/'em' units. (70788313fe by @nlutsenko)
- Fix nullability lost on readonly types in TurboModule specs (c006722e6c by @appden)
- Make tests pass for windows (9596bf045d by @cipolleschi)
- Handle possible null exception on ReactEditText with AppCompat 1.4.0 (24a1f5c66c by @mikemasam)
- Fixed the disappearance of items when scrolling after zooming VirtualizedList. (13a72e0ccc by @islandryu)
- Improved Flow type inference in Animated
.interpolate()
(7b86fa2b79 by @motiz88) - Add Jest mock for Vibration module (79529a1c77 by @hduprat)
- Allow ReactInstrumentationTest to use custom JSIModules (eb2a83b0be by @christophpurrer)
- Working around Long paths limitation on Windows (883a93871c by @mganandraj)
- Fix eslint-plugin-specs prepack npm lifecycle hook now that we use npm 8 (8441c4a6f7 by @kelset)
- Codegen should ignore
.d.ts
files (0f0d52067c by @tido64) - Avoid full copy of large folly::dynamic objects in JSIExecutor#defaultTimeoutInvoker (521011d4cc by @christophpurrer)
Android specific
- Fixed HorizontalScrollView API scrollToEnd causing NPE in side-effects. (e5ba6ab7b4 by @ryancat)
- Fix InputAccessoryView crash on Android (afa5df1764 by @hduprat)
- Bring back non-rootview touch handling based on reactTag (8b837268b4 by @fkgozali)
- Make Text not focusable by default (8ced165e53 by @kacieb)
- Revert PR 33924 because of issues with TextInputs with numeric keyboard types not respecting the secureTextEntry prop (edb27e3aa1 by @charlesbdudley)
- Fix edge case when we enqueue a pending event to views on stopped surface (ea7c9f2ad9 by @ryancat)
- Fix a bug where the keyboard, once set as email, won't change back to default. (ec307e0167 by @larkox)
- NPE in
ReactEditText.setInputType
when React Native is used with some versions of a AppCompat 1.4.x. (and possibly others) (92ebb298e2) - Fix NPE on
ReactEditText
due to null mFabricViewStateManager (ba6bf5a3ce by @cortinico) - Scroll views would still receive scroll events when nested in a view with
pointer-events: "none"
(fced96bf52 by @javache) - Fixed an edge case that event dispatching is failed after pre-allocation of a view and before the view is mounted. (a093fe5f2f by @ryancat)
- Avoid crash by handling missing views in dispatchViewManagerCommand (ee1a191cb1 by @hsource)
- Pass react build dir to cmake (6ab7a99518 by @janicduplessis)
- Fix missing space in ReactPropertyException message (24560b6718 by @markv)
- Fix import path breakage (2e1e62f2bf by @aniketmathur)
- When
onEndReachedThreshold
is set to 0onEndReached
function onVirtualizedList
properly fires once the user scrolls to the bottom of the list. (b869680c11) - Fix rendering of transparent borders in RN Android (a9659ce86d by @mdvacca)
- Exception with
Cannot load WebView
message will initialising WebView (along with existing checks) (9e0d8696cc by @rachitmishra) - Fix accessibilityState overwriting view's disabled state on Android (f35d18caa3 by @okwasniewski)
- Make sure *.ts files are considered for task avoidance in the Gradle Plugin (1a9fb6cb68 by @cortinico)
- Fix missing import on New Architecture build script in template (a22f30d2ce by @cortinico)
iOS specific
- Use
NODE_BINARY
from.xcode.env
when running packager from Xcode (ff785dbcf5 by @elsurudo) - Bug with error message formatting when bundle is missing (f501979f3d by @BenLorantfy)
- Fix the race condition when calling readAsDataURL after new Blob(blobs) (bd12e41188 by @wood1986)
- Fix the way the orientation events are published, to avoid false publish on orientation change when app changes state to inactive (7d42106d4c by @lbaldy)
- Fix sed error when installing
glog
(4a7e4b9ca6 by @alphashuro) - Don't validate ENTRY_FILE in react-native-xcode.sh (780fe80fca by @janicduplessis)
_scrollViewComponentView
is set toRCTPullToRefreshViewComponentView's
superview (4e4b9e2111 by @dmytrorykun)- Use
GCC_PREPROCESSOR_DEFINITIONS
to setFB_SONARKIT_ENABLED
(77e6bff629 by @janicduplessis) - Fix Hermes not being properly downloaded during pod install (d5e0659fcc by @cortinico)
- Typo in the documation for the
automaticallyAdjustKeyboardInsets
prop (927b43d47c by @jeremybarbet) - Deprecate iOS/tvOS SDK 11.0 support now that 12.4+ is required (f56d701e56 by @leotm)
- Fix blank spaces that don't recover as you scroll when in an RTL locale and e.nativeEvent.zoomScale is -1. (bc7b5c3011, 2f491bfa9f)
- Fixed paddingTop not being applied when using padding and paddingVertical in multiline textinput (2fb107c9a6 by @hetanthakkar1)
- Fixed the ability to pass the port to use for Metro when running
react-native run-ios --port <port>
. (7dc0b5153e by @lindboe) - Fix missing imports (c78babac39)
- Fix React-bridging headers import not found (c4b51e8d76 by @Kudo)
- Fix Hermes executor not available when
use_frameworks
is enabled (88b7b640a7 by @Kudo)
Security
- Add GitHub token permissions for workflows (3da3d82320 by @varunsh-coder)
- Bump RCT-Folly to 2021-07-22 (68f3a42fc7 by @luissantana)