Skip to content

[RN][HermesV1] Use Hermes V1 as default engine#54989

Closed
cipolleschi wants to merge 9 commits into
mainfrom
cipolleschi/enable-hermes-v1-by-default
Closed

[RN][HermesV1] Use Hermes V1 as default engine#54989
cipolleschi wants to merge 9 commits into
mainfrom
cipolleschi/enable-hermes-v1-by-default

Conversation

@cipolleschi

@cipolleschi cipolleschi commented Dec 29, 2025

Copy link
Copy Markdown
Contributor

Summary:

This change makes Hermes V1 the default engine for React Native for both platforms. This change needs to land before the branch cut of react native 0.84

Changelog:

[iOS][Changed] - Make Hermes V1 the default engine for iOS

Test Plan:

  1. Run bundle exec pod install and verified that Hermes V1 is used when building from source
Simulator Screenshot - iPhone 17 Pro - 2025-12-29 at 11 28 44 2. Run `prebuild-ios -s` and verified that the scripts downloads the Hermes V1 tarball Screenshot 2025-12-29 at 10 37 53 3. GHA and nightlies

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Dec 29, 2025
@cipolleschi cipolleschi changed the title [RN][HermesV1] Use Hermes V1 as default engine [RN][iOS][HermesV1] Use Hermes V1 as default engine Dec 29, 2025
@cipolleschi cipolleschi marked this pull request as ready for review December 29, 2025 09:50
@meta-codesync

meta-codesync Bot commented Dec 29, 2025

Copy link
Copy Markdown

@cipolleschi has imported this pull request. If you are a Meta employee, you can view this in D89881943.

@github-actions

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: build_android
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github publishAllToMavenTempLocal build 9.0.0 Build Scan not published

@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch 3 times, most recently from 5064dfa to 350a654 Compare December 29, 2025 14:15
@complexapps2026

Copy link
Copy Markdown

I’m pretty new to React Native and this change for iOS looks great. Could you help me understand if Android will use Hermes V1 by default too?

@cipolleschi

Copy link
Copy Markdown
Contributor Author

@complexapps2026 the goal is also for Android to do that. this PR only contains changes related to iOS. A similar PR for Android will be opened soon!

@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch 2 times, most recently from 4faf893 to d88d553 Compare January 5, 2026 13:50
@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch from d88d553 to b42ebc6 Compare January 5, 2026 16:57
@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch from b42ebc6 to 874f569 Compare January 6, 2026 10:05
@cipolleschi cipolleschi changed the title [RN][iOS][HermesV1] Use Hermes V1 as default engine [RN][HermesV1] Use Hermes V1 as default engine Jan 6, 2026
@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: run_fantom_tests
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github :private:react-native-fantom:buildFantomTester 9.0.0 Build Scan not published

@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: build_android
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github publishAllToMavenTempLocal build 9.0.0 Build Scan not published

@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch 2 times, most recently from eb1669e to e99a190 Compare January 6, 2026 13:31
@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: run_fantom_tests
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github :private:react-native-fantom:buildFantomTester 9.0.0 Build Scan not published

@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: build_android
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github publishAllToMavenTempLocal build 9.0.0 Build Scan not published

@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: run_fantom_tests
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github :private:react-native-fantom:buildFantomTester 9.0.0 Build Scan not published

@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: build_android
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github publishAllToMavenTempLocal build 9.0.0 Build Scan not published

@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch from e99a190 to 9eddb95 Compare January 6, 2026 17:32
@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: run_fantom_tests
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github :private:react-native-fantom:buildFantomTester 9.0.0 Build Scan not published

@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: build_android
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github publishAllToMavenTempLocal build 9.0.0 Build Scan not published

@cipolleschi cipolleschi force-pushed the cipolleschi/enable-hermes-v1-by-default branch from 9eddb95 to fcdd1a0 Compare January 6, 2026 18:11
@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: run_fantom_tests
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github :private:react-native-fantom:buildFantomTester 9.0.0 Build Scan not published

1 similar comment
@github-actions

github-actions Bot commented Jan 7, 2026

Copy link
Copy Markdown

Job Summary for Gradle

Test All :: run_fantom_tests
Gradle Root Project Requested Tasks Gradle Version Build Outcome Build Scan®
react-native-github :private:react-native-fantom:buildFantomTester 9.0.0 Build Scan not published

@cortinico cortinico left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Review automatically exported from Phabricator review in Meta.

@meta-codesync meta-codesync Bot closed this in f140c49 Jan 7, 2026
@react-native-bot

Copy link
Copy Markdown
Collaborator

This pull request was successfully merged by @cipolleschi in f140c49

When will my fix make it into a release? | How to file a pick request?

@react-native-bot react-native-bot added the Merged This PR has been merged. label Jan 7, 2026
react-native-bot pushed a commit that referenced this pull request Jan 12, 2026
Summary:
This change makes Hermes V1 the default engine for React Native for both platforms. This change needs to land before the branch cut of react native 0.84

bypass-github-export-checks

## Changelog:
[iOS][Changed] - Make Hermes V1 the default engine for iOS

Pull Request resolved: #54989

Test Plan:
1. Run `bundle exec pod install` and verified that Hermes V1 is used when building from source
<img height="480" alt="Simulator Screenshot - iPhone 17 Pro - 2025-12-29 at 11 28 44" src="https://github.com/user-attachments/assets/0889f16c-f2ee-4a0e-9a4d-529dd82c8283" />
2. Run `prebuild-ios -s` and verified that the scripts downloads the Hermes V1 tarball
<img width="831" height="324" alt="Screenshot 2025-12-29 at 10 37 53" src="https://github.com/user-attachments/assets/9a60565e-1e13-4967-a4a4-dd079e6b040f" />
3. GHA and nightlies

Reviewed By: vzaidman, cortinico, huntie

Differential Revision: D89881943

Pulled By: cipolleschi

fbshipit-source-id: 958b6d31bd4230ba4a5c7fee2bffc19e03dcbc89
@react-native-bot

Copy link
Copy Markdown
Collaborator

This pull request was successfully merged by @cipolleschi in bbe02de

When will my fix make it into a release? | How to file a pick request?

@hannojg

hannojg commented Jan 15, 2026

Copy link
Copy Markdown
Contributor

Hey, this seems to have broken the fantom tests:

@cortinico

Copy link
Copy Markdown
Contributor

Yeah we're aware of it @hannojg

meta-codesync Bot pushed a commit that referenced this pull request Feb 5, 2026
Summary:
Changing the line in `ReactPlugin.kt` that always set `hermesV1Enabled` to `true` even if it was explicitly disabled, accidentally omitted in #54989.

In recent update of hermes V1 binary a file `RuntimeAdapter.h` was removed.

## Changelog:

[ANDROID] [FIXED] - ReactPlugin.kt always setting `hermesV1Enabled` to `true`

Pull Request resolved: #55399

Test Plan: Build React Native from source on latest 0.84 RC, disable hermesV1 and see that it compiles now.

Reviewed By: cipolleschi

Differential Revision: D92267385

Pulled By: cortinico

fbshipit-source-id: 58ecae6d3064995ef9e63ddbd67ac04db2a1126b
react-native-bot pushed a commit that referenced this pull request Feb 26, 2026
Summary:
Changing the line in `ReactPlugin.kt` that always set `hermesV1Enabled` to `true` even if it was explicitly disabled, accidentally omitted in #54989.

In recent update of hermes V1 binary a file `RuntimeAdapter.h` was removed.

## Changelog:

[ANDROID] [FIXED] - ReactPlugin.kt always setting `hermesV1Enabled` to `true`

Pull Request resolved: #55399

Test Plan: Build React Native from source on latest 0.84 RC, disable hermesV1 and see that it compiles now.

Reviewed By: cipolleschi

Differential Revision: D92267385

Pulled By: cortinico

fbshipit-source-id: 58ecae6d3064995ef9e63ddbd67ac04db2a1126b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged This PR has been merged. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants