Skip to content

[Snyk] Security upgrade react-native from 0.76.9 to 0.85.0 - #2

Open
byrizki wants to merge 1 commit into
mainfrom
snyk-fix-d7d2d8b211b54fc821ead5b33ce14ffa
Open

byrizki wants to merge 1 commit into
mainfrom
snyk-fix-d7d2d8b211b54fc821ead5b33ce14ffa

Conversation

@byrizki

@byrizki byrizki commented Oct 20, 2026

Copy link
Copy Markdown
Owner

snyk-top-banner

Snyk has created this PR to fix 1 vulnerabilities in the pnpm dependencies of this project.

Snyk changed the following file(s):

  • packages/headless-webview/example/package.json
⚠️ Warning
Failed to update the pnpm-lock.yaml, please update manually before merging.

Vulnerabilities that will be fixed with an upgrade:

Issue Score
high severity Regular Expression Denial of Service (ReDoS)
SNYK-JS-PICOMATCH-21248802
  721  

Breaking Change Risk

Merge Risk: High

Notice: This assessment is enhanced by AI.


Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • Max score is 1000. Note that the real score may have changed since the PR was raised.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic


Learn how to fix vulnerabilities with free interactive lessons:

🦉 Regular Expression Denial of Service (ReDoS)

@byrizki

byrizki commented Oct 20, 2026

Copy link
Copy Markdown
Owner Author

Merge Risk: High

This is a major upgrade across nine significant versions of React Native (0.77 through 0.85), introducing numerous breaking changes that require substantial developer effort and careful migration.

A direct upgrade is not recommended. The safest path is to upgrade incrementally (e.g., one or two versions at a time) using the official React Native Upgrade Helper to apply the necessary native file and dependency changes for each step.

Key Breaking Changes & Required Actions:

  • Native Project & Build Changes:

    • iOS: New projects and templates default to Swift instead of Objective-C starting in v0.77. This involves replacing AppDelegate.h/m/mm with a single AppDelegate.swift. You must also add a required RCTAppDependencyProvider line to your app delegate to prevent runtime errors.
    • Android: Support was added for Android 15 and devices with 16KB memory pages. Numerous changes to Gradle, Kotlin versions, and native configuration will be required throughout the upgrade path.
  • API Removals & Deprecations:

    • StyleSheet.absoluteFill: This deprecated API is removed in v0.85. You must replace it with StyleSheet.absoluteFillObject.
    • TypeScript Aliases: Deprecated type aliases have been removed in v0.85. Code must be updated to use the types directly.
  • Tooling & Environment:

    • Node.js Support: v0.85 drops support for end-of-life (EOL) Node.js versions.
    • Jest Configuration: The Jest preset has been moved to a separate react-native/jest-preset package in v0.85. Your jest.config.js must be updated.
    • Metro Debugging: The console.log() streaming feature was removed from Metro in v0.77. Developers must now use React Native DevTools or other dedicated tools for debugging logs.

Recommendation: Do not attempt to merge this upgrade directly. Create a dedicated migration plan to upgrade incrementally. Use the React Native Upgrade Helper to generate a diff for each version jump and apply the changes meticulously. This process will involve significant testing at each stage.

Notice 🤖: This content was augmented using artificial intelligence. AI-generated content may contain errors and should be reviewed for accuracy before use.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants