react-native v0.68.0 Release Notes

  • ๐Ÿ’ฅ Breaking Changes

    • ๐Ÿšš CI moved to Node 16. (f1488db109 by @kelset). This change enforces Node >= 14 for React Native builds.
    • โฌ†๏ธ Bump Android Gradle Plugin to 7.0.1. (272cfe5d13 by @dulmandakh) This version of Android Gradle plugin enforces JDK 11 for Android builds. Do not upgrade to AGP 7.1 as it is not supported by this version of react-native.
    • โœ‚ Removed fallbackResource from RCTBundleURLProvider API (0912ee179c) by @philIip

    ๐Ÿ†• New Architecture

    ๐Ÿ“š If you are interested in enabling the new architecture, please refer to the dedicated documentation.

    Android specific

    • Setup a newArchEnabled property to Opt-in the New Architecture in the template (8d652fba4c by @cortinico)

    iOS specific

    โž• Added

    • ๐Ÿ“ฆ Create @fb-tools-support/yarn package (7db294d6d5 by @motiz88)
    • ๐Ÿ‘Œ Support string color values in Animated.Color (d3a0c4129d)
    • ๐Ÿ†• New Animated.Color node (ea90a76efe)
    • โž• Added linter warning config for unstable nested components (988fefc44d by @javache)
    • Option to supply platformConfig to NativeAnimated (4a227ce2ab by @rozele)
    • Animated.event can be used to extract values with numeric keys from native events (b2105711a0 by @javache)
    • โž• Adds a setSelection imperative method to TextInput (771ca921b5 by @lyahdav)
    • โšก๏ธ Native-only prop to optimize text hit testing on some RN platforms (f3bf2e4f51 by @rozele)

    Android specific

    • โž• Added DoNotStripAny proguard rules (48318b1542 by @ShikaSD)
    • โž• Add new API in ScrollView and HorizontalScrollView to process pointerEvents prop. (48f6967ae8 by @ryancat)
    • โž• Add accessibilityLabelledBy props (36037fa81b by @grgr-dkrk)
    • โž• Added missing constructor to WritableNativeArray (c68c47d2ba by @piaskowyk)
    • โž• Add new API for custom fling animator to provide predicted travel distance for its fling animation. (fe6277a30d by @ryancat)
    • โž• Adding new API onChildEndedNativeGesture to the RootView interface to let its implementations notify the JS side that a child gesture is ended. (9b33c31ee0 by @ryancat)
    • ๐Ÿ‘‰ Make the reactNativeArchitectures property more discoverable (0f39a1076d by @cortinico)
    • โž• Added isAccessibilityServiceEnabled to get if accessibility services are enabled (c8b83d4e0b by @grgr-dkrk)
    • โž• Add bundleForVariant option (d2c10da5d5 by @grit96)
    • Add ACCEPT_HANDOVER, ACTIVITY_RECOGNITION, ANSWER_PHONE_CALLS, READ_PHONE_NUMBERS & UWB_RANGING to PermissionsAndroid (4b25a0aaa0 by @iBotPeaches)

    iOS specific

    ๐Ÿ”„ Changed

    • โฌ†๏ธ Bump RN CLI to v7.0.3, and Metro to 67 (848ba6fb1d by @kelset) and (df2e934a69 by @kelset)
    • โฌ†๏ธ Upgraded react-devtools-core dependency to 4.23.0 (1cc217d5ef by @bvaughn)
    • โฌ†๏ธ Bump Flipper to 0.125.0 (50057158ca by @cortinico)
    • Export Flow type for deceleration rate for use in other files to keep deceleration rate prop values consistently typed (9b0ed920ef)
    • โฌ†๏ธ Upgrade deprecated-react-native-prop-types dependency (badd30885f by @chiaramooney)
    • ๐Ÿ‘Œ Improved error message in react.gradle (7366a866b3 by @vonovak)
    • โฌ†๏ธ Upgraded packages to the latest versions for ESLint v7. (cf763cdf81 by @yungsters)
    • โšก๏ธ Updated the links for the discussions and changelog (daf37a1fce by @MikeyAlmighty)
    • XMLHttpRequest.getAllResponseHeaders() now returns headers with names lowercased and sorted in ascending order, as per specification (b2415c4866 by @ascherkus)
    • โฌ†๏ธ Bump react-native-codegen to 0.0.9 (e3a71b019f by @cortinico)
    • ๐Ÿ—„ Accessing Image.propTypes, Text.propTypes, TextInput.propTypes, ColorPropType, EdgeInsetsPropType, PointPropType, or ViewPropTypes now emits a deprecation warning. (3f629049ba by @yungsters)
    • โฌ†๏ธ Bump core-workflow-apply-version-label version (e973b3afc2 by @lucasbento)
    • โž• Add vendor/bundle into .gitignore template (2f67f5d68b by @MoOx)

    Android specific

    iOS specific

    • Don't capitalize the first letter of a word that is starting by a number (8b5a5d4645 by @MaeIg)
    • โšก๏ธ updated jsBundleURLForBundleRoot:fallbackResource to jsBundleURLForBundleRoot: (aef843bfe6 by @philIip)
    • โœ‚ Remove iOS 11 availability check (9b059b6709 by @ken0nek)
    • ๐ŸŽ Refactor: Assign string label to each case in RCTPLTag enum for startup performance logging (60e60a9b3d by @p-sun)
    • โšก๏ธ IOS Ruby Updates (1e6add1a43 by @barbieri)
    • โšก๏ธ Update Flipper pods to support re-enable macCatalyst (2a5265dff7 by @mikehardy)
    • ๐Ÿ— Apple Silicon builds of glog & Flipper-Glog (274c617f5b by @rayzr522)

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix error "mockModal is not a function" (507b05f4c0 by @AntoineDoubovetzky)
    • ๐Ÿ›  Fixes execution of animation when a toValue of AnimatedValue is used. (8858c21124)
    • ๐Ÿ›  Fix RN version syntax to match new nightly build structure. (3d1d4ee457 by @chiaramooney)
    • ๐Ÿ›  Fix typo in _updateBottomIfNecessary function on KeyboardAvoidingView component (0cc80b4d0c by @gabrieldonadel)
    • ๐Ÿ›  Fix: Removes interface only check from third party components GenerateThirdPartyFabricComponentsProvider (3e6902244a by @Ubax)
    • Set CxxModules' Instance before retrieving their Method vector. (1d45b20b6c by @JunielKatarn)
    • AnimatedValue.__detach should store getValue result with offset deducted (fe53cae954 by @rozele)
    • AnimatedValue.stopAnimation callback with correct value for NativeAnimated (8ba771c3dd by @rozele)
    • ๐Ÿ‘• ESLint no-undef rule clashing with TypeScript compiler for TS files (ae67c5ac45 by @fiznool)
    • ๐Ÿ‘• ESLint no-shadow rule returning false positive for TypeScript enums (722a0ff6f8 by @fiznool)
    • ๐Ÿ›  Fix support for custom port (b399c2e3d1 by @enniel)
    • onLayout prop is handled correctly in <KeyboardAvoidingView> (9c5e177a79)
    • โœ… Modal accepts a testID but didn't forward it to RCTModalHostView, therefore not making it show up for e2e tests depending on viewhierarchy. (5050e7eaa1 by @GijsWeterings)
    • โœ‚ Remove unused and incorrect type declarations in WebSocketInterceptor (91728e2266 by @mischnic)
    • Complete missing Flow declarations in URL (98abf1b02f by @mischnic)
    • Pressable not passing hover props and event handlers to PressabilityConfig (1b30dd074b by @Saadnajmi)
    • โœ… Composite animations will now be ran immediately when the app is in testing mode (b03e824c52 by @javache)
    • โœ‚ Remove duplicate class members (c0e489b729 by @bradzacher)
    • ๐Ÿ›  Fix: Use same implementation for performance.now() on iOS and Android (1721efb54f by @mrousavy)

    Android specific

    iOS specific

    • ScrollView: Respect contentInset when animating new items with autoscrollToTopThreshold, make automaticallyAdjustKeyboardInsets work with autoscrollToTopThreshold (includes vertical, vertical-inverted, horizontal and horizontal-inverted ScrollViews) (49a1460a37 by @mrousavy)
    • Prevent RCTConvert error for allowed null blob types (e1b698c5f2 by @habovh)
    • Migrate ScreenshotManager from NativeModule to TurboModule (b13e41d98e by @p-sun)
    • ๐Ÿ›  Fix usage of cocoapods with --project-directory flag and new arch (9e7d91f2fc by @danilobuerger)
    • Post RCTContentDidAppearNotification with new arch (75105e692c by @danilobuerger)
    • โœ‚ Remove absolute paths from pods project (42b01a32a1 by @danilobuerger)
    • 0๏ธโƒฃ Respect RCTSetDefaultFontHandler chosen font (89efa1a0c1 by @danilobuerger)
    • ๐Ÿ›  Fixed duplicated UUIDs problem during pod install phase. (f595a4e681)
    • ๐Ÿ›  Fix Time.h patch not being applied when running pod install --project-directory=ios (60cef850bd by @tido64)
    • ๐Ÿ›  Fix WebSocket control frames having payloads longer than 125 bytes (86db62b7a8 by @asmeikal)
    • Stop RedBox from appearing for LogBox handled errors (9d2df5b8ae by @liamjones)
    • Enable hitSlop to be set using a single number. (3addafa525 by @javache)
    • Fix __apply_Xcode_12_5_M1_post_install_workaround failing when one of the Pods has no IPHONEOS_DEPLOYMENT_TARGET set (9cd4092336 by @Yonom)
    • ๐Ÿš€ This is a quick speculative fix since we know CFRunLoopPerformBlock does not push/pop an autorelease pool. (3fff164dfa by @christophpurrer)
    • ๐Ÿ›  Fixed RCTImageLoaderTests (1542f83527 by @philIip)
    • ๐Ÿ›  Fix Rosetta2 CocoaPods warning on Apple Silicon (e918362be3 by @oblador)
    • ๐Ÿ›  Fix pod install --project-directory=ios failing due to wrong path to React-Codegen (ebb26cf2e4 by @tido64)

    ๐Ÿ—„ Deprecated

    Android specific

    • ๐Ÿ—„ Gradle: Deprecate reactRoot in favor of root and reactNativeDir (8bc324fd34 by @cortinico)

    โœ‚ Removed

    iOS specific

    • โœ‚ Remove RCTUIManagerObserver from RCTNativeAnimatedTurboModule (e9ed115bab by @p-sun)