Skip to content

[Snyk] Security upgrade react-native from 0.74.1 to 0.76.0#16

Open
revan-zhang wants to merge 1 commit intomasterfrom
snyk-fix-e1da420acbb15142398901d307f304fb
Open

[Snyk] Security upgrade react-native from 0.74.1 to 0.76.0#16
revan-zhang wants to merge 1 commit intomasterfrom
snyk-fix-e1da420acbb15142398901d307f304fb

Conversation

@revan-zhang
Copy link

@revan-zhang revan-zhang commented Mar 19, 2026

snyk-top-banner

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

Snyk changed the following file(s):

  • example/package.json

Vulnerabilities that will be fixed with an upgrade:

Issue Score
high severity XML Entity Expansion
SNYK-JS-FASTXMLPARSER-15677840
  710  

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:

🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.


Open with Devin

Note

Medium Risk
Upgrading react-native across minor versions can introduce breaking runtime/build changes in the example app and its native tooling, despite being a targeted dependency bump.

Overview
Updates the example app dependency on react-native from 0.74.1 to 0.76.0 in example/package.json to address a reported vulnerability (via transitive deps).

Written by Cursor Bugbot for commit 76f091f. This will update automatically on new commits. Configure here.

@revan-zhang
Copy link
Author

revan-zhang commented Mar 19, 2026

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@socket-security
Copy link

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedeslint@​8.57.18910010050100
Addedjest@​29.7.01001006894100
Addedreact-test-renderer@​18.2.0751008398100
Addedjpush-react-native@​3.2.67910010098100
Addedtypescript@​5.0.41001009010090
Addedprettier@​2.8.8921009892100
Updatedreact-native@​1000.0.0 ⏵ 0.76.098 +10100100100 +50100

View full report

@socket-security
Copy link

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
Obfuscated code: npm flow-parser is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: ?npm/@react-native/babel-preset@0.74.83npm/react-native@0.76.0npm/flow-parser@0.305.1

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/flow-parser@0.305.1. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

Copy link

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

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

Devin Review found 1 potential issue.

View 1 additional finding in Devin Review.

Open in Devin Review

"jpush-react-native": "^3.2.1",
"react": "18.2.0",
"react-native": "0.74.1"
"react-native": "0.76.0"

Choose a reason for hiding this comment

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

🟡 devDependencies @react-native/* packages not updated to match new react-native 0.76.0

react-native is bumped from 0.74.1 to 0.76.0, but the @react-native/babel-preset, @react-native/eslint-config, @react-native/metro-config, and @react-native/typescript-config devDependencies remain pinned at 0.74.83. These @react-native/* packages are part of the react-native monorepo and are versioned in lockstep with it. Using 0.74.83 tooling with react-native 0.76.0 will likely cause Metro bundler configuration incompatibilities or build failures in the example app, as each major react-native release expects the matching versions of these companion packages.

Prompt for agents
In example/package.json, update the @react-native/* devDependencies on lines 22-25 to versions matching react-native 0.76.0. These packages are released in lockstep with react-native from the same monorepo. The correct versions would be the 0.76.x variants, e.g.:

  "@react-native/babel-preset": "0.76.0",
  "@react-native/eslint-config": "0.76.0",
  "@react-native/metro-config": "0.76.0",
  "@react-native/typescript-config": "0.76.0"

Also verify that react 18.2.0 is compatible with react-native 0.76.0 (react-native 0.76 typically expects react 18.3.1).
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

"jpush-react-native": "^3.2.1",
"react": "18.2.0",
"react-native": "0.74.1"
"react-native": "0.76.0"
Copy link

Choose a reason for hiding this comment

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

Mismatched React version for React Native 0.76.0

High Severity

react-native was bumped to 0.76.0 but react remains at 18.2.0. React Native 0.76.0 expects react 18.3.1 as its peer dependency. This version mismatch will cause npm peer dependency errors during install and may lead to runtime incompatibilities, since 0.76.0 depends on APIs and deprecation warnings introduced in React 18.3.

Fix in Cursor Fix in Web

"jpush-react-native": "^3.2.1",
"react": "18.2.0",
"react-native": "0.74.1"
"react-native": "0.76.0"
Copy link

Choose a reason for hiding this comment

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

Dev dependencies not updated for React Native 0.76

High Severity

react-native was bumped to 0.76.0 but @react-native/babel-preset, @react-native/eslint-config, @react-native/metro-config, and @react-native/typescript-config all remain pinned at 0.74.83. These packages are versioned in lockstep with react-native and need to be 0.76.x. Notably, the babel preset 0.76 enables the Hermes parser by default, which is required for correct transpilation in 0.76.

Fix in Cursor Fix in Web

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