Skip to content

Support React Native 0.85#4014

Draft
m-bert wants to merge 4 commits intomainfrom
@mbert/support-85
Draft

Support React Native 0.85#4014
m-bert wants to merge 4 commits intomainfrom
@mbert/support-85

Conversation

@m-bert
Copy link
Contributor

@m-bert m-bert commented Mar 4, 2026

Description

This PR brings support for React Native 0.85

Note

For now CI fails with @react-native/jest-preset. Seems like bug in React Native itself, as jest-preset.js is still not present in node_modules.

Status

  • 0.85.0-rc.0 ✅

Test plan

Tested that basic-example builds and works correctly.

@m-bert m-bert self-assigned this Mar 4, 2026
@m-bert m-bert added the New React Native version support This pull request aims to bring support for new React Native version label Mar 4, 2026
Copilot AI review requested due to automatic review settings March 4, 2026 10:15
@m-bert m-bert marked this pull request as draft March 4, 2026 10:15
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the repository’s example app/tooling to validate compatibility with React Native 0.85.0-rc.0, plus small RN API adjustments (e.g., StyleSheet.absoluteFill*) that align with newer RN versions.

Changes:

  • Bumps react-native and related @react-native/* tooling to 0.85.0-rc.0 for basic-example and the package dev setup.
  • Replaces StyleSheet.absoluteFillObject with StyleSheet.absoluteFill across components/examples.
  • Updates platform/tooling artifacts (Jest preset config, Gradle wrapper, CocoaPods lockfile, Ruby gems) and refreshes yarn.lock.

Reviewed changes

Copilot reviewed 14 out of 18 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
yarn.lock Refreshes dependency graph to include RN 0.85 RC and related tooling updates.
packages/react-native-gesture-handler/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx Switches to StyleSheet.absoluteFill in styles.
packages/react-native-gesture-handler/src/components/ReanimatedDrawerLayout.tsx Switches to StyleSheet.absoluteFill in styles.
packages/react-native-gesture-handler/package.json Bumps dev RN + RN tooling versions to 0.85.0-rc.0.
apps/common-app/src/new_api/showcase/bottom_sheet/index.tsx Switches to StyleSheet.absoluteFill in styles.
apps/common-app/src/legacy/v2_api/bottom_sheet/index.tsx Switches to StyleSheet.absoluteFill in styles.
apps/common-app/src/legacy/showcase/bottomSheet/index.tsx Uses StyleSheet.absoluteFill in view styles.
apps/common-app/src/legacy/recipes/scaleAndRotate/index.tsx Switches to StyleSheet.absoluteFill in styles.
apps/common-app/src/legacy/basic/pagerAndDrawer/index.android.tsx Switches to StyleSheet.absoluteFill in styles.
apps/basic-example/package.json Bumps react-native and @react-native/* tooling versions to 0.85.0-rc.0.
apps/basic-example/jest.config.js Changes Jest preset to @react-native/jest-preset.
apps/basic-example/ios/Podfile.lock Updates iOS pods/React Native/Hermes versions for RN 0.85 RC.
apps/basic-example/android/gradlew.bat Updates Gradle wrapper script content.
apps/basic-example/android/gradlew Updates Gradle wrapper script content.
apps/basic-example/android/gradle/wrapper/gradle-wrapper.properties Updates Gradle distribution URL.
apps/basic-example/android/gradle/wrapper/gradle-wrapper.jar Updates Gradle wrapper JAR.
apps/basic-example/Gemfile.lock Adds nkf gem to the bundle.
apps/basic-example/Gemfile Adds nkf gem requirement.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -1,3 +1,3 @@
module.exports = {
preset: 'react-native',
preset: '@react-native/jest-preset',
Copy link

Copilot AI Mar 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

jest.config.js switches the preset to @react-native/jest-preset, but apps/basic-example/package.json does not list @react-native/jest-preset in dependencies/devDependencies. Since React Native declares it as an (optional) peer dependency, Jest will fail to resolve the preset unless you add it explicitly (ideally matching the RN version) or revert to the previous react-native preset.

Suggested change
preset: '@react-native/jest-preset',
preset: 'react-native',

Copilot uses AI. Check for mistakes.
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
Copy link

Copilot AI Mar 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Gradle wrapper configuration downloads and executes the Gradle distribution from distributionUrl without any checksum or signature verification. If services.gradle.org or the network path is compromised, an attacker could deliver a tampered Gradle 9.3.1 binary that runs arbitrary code in your CI or developer environments. Add a distributionSha256Sum entry for this distribution so the wrapper verifies the artifact’s integrity before executing it.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

New React Native version support This pull request aims to bring support for new React Native version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants