Skip to content

Remove hermesV1Enabled Gradle property and simplify Hermes version resolution (#56733)#56733

Open
cipolleschi wants to merge 2 commits intofacebook:mainfrom
cipolleschi:export-D104244582
Open

Remove hermesV1Enabled Gradle property and simplify Hermes version resolution (#56733)#56733
cipolleschi wants to merge 2 commits intofacebook:mainfrom
cipolleschi:export-D104244582

Conversation

@cipolleschi
Copy link
Copy Markdown
Contributor

@cipolleschi cipolleschi commented May 8, 2026

Summary:

  • Remove hermesV1Enabled / react.hermesV1Enabled Gradle property and all branching it controls
  • Rename HERMES_V1_VERSION_NAME to HERMES_VERSION_NAME in version.properties
  • Remove hermesV1Enabled from PrivateReactExtension, ProjectUtils, PropertyUtils, ReactPlugin
  • Simplify DependencyUtils.Coordinates to single Hermes version
  • Make -DHERMESVM_HEAP_HV_MODE=HEAP_HV_PREFER32 CMake flag unconditional
  • Remove -DHERMES_V1_ENABLED=1 CMake argument from ReactAndroid and Fantom builds
  • Delete hermesV1Enabled=true from gradle.properties
  • Update all Gradle plugin tests

Changelog:

[Android][Removed] - Remove hermesV1Enabled and simplify the code

Test plan

  • Gradle plugin: ./gradlew -p packages/gradle-plugin build — BUILD SUCCESSFUL, all tests pass
  • Android: ./gradlew :packages:rn-tester:android:app:assembleDebug — BUILD SUCCESSFUL

Reviewed By: cortinico

Differential Revision: D104244582

@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 May 8, 2026
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 8, 2026

@cipolleschi has exported this pull request. If you are a Meta employee, you can view the originating Diff in D104244582.

Copy link
Copy Markdown
Contributor

@cortinico cortinico left a comment

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 changed the title Remove hermesV1Enabled Gradle property and simplify Hermes version resolution Remove hermesV1Enabled Gradle property and simplify Hermes version resolution (#56733) May 8, 2026
meta-codesync Bot pushed a commit that referenced this pull request May 8, 2026
…solution (#56733)

Summary:

  - Remove `hermesV1Enabled` / `react.hermesV1Enabled` Gradle property and all branching it controls
  - Rename `HERMES_V1_VERSION_NAME` to `HERMES_VERSION_NAME` in `version.properties`
  - Remove `hermesV1Enabled` from `PrivateReactExtension`, `ProjectUtils`, `PropertyUtils`, `ReactPlugin`
  - Simplify `DependencyUtils.Coordinates` to single Hermes version
  - Make `-DHERMESVM_HEAP_HV_MODE=HEAP_HV_PREFER32` CMake flag unconditional
  - Remove `-DHERMES_V1_ENABLED=1` CMake argument from `ReactAndroid` and Fantom builds
  - Delete `hermesV1Enabled=true` from `gradle.properties`
  - Update all Gradle plugin tests

## Changelog:
[Android][Removed] - Remove hermesV1Enabled and simplify the code

  ## Test plan
  - [x] Gradle plugin: `./gradlew -p packages/gradle-plugin build` — BUILD SUCCESSFUL, all tests pass
  - [x] Android: `./gradlew :packages:rn-tester:android:app:assembleDebug` — BUILD SUCCESSFUL

Reviewed By: cortinico

Differential Revision: D104244582
facebook#56731)

Summary:

  - Remove all dead C++ code behind `!defined(HERMES_V1_ENABLED)` guards in `HermesExecutorFactory.cpp` and `HermesInstance.cpp`
  - Delete `Registration.h`, `Registration.cpp`, `ConnectionDemux.h`, `ConnectionDemux.cpp`, and `ConnectionDemuxTests.cpp` (entirely legacy code)
  - Remove `HERMES_V1_ENABLED` compile definition from `react-native-flags.cmake`
  - Remove `HERMES_V1_ENABLED` cache variable from Android `CMakeLists.txt`

  This is Phase 1 of removing legacy Hermes support. Since Hermes V1 is already the default on all platforms and the 0.86 branch has been cut, all legacy Hermes code
   is dead and can be safely removed.

## Changelog:
[General][Breaking] - Remove Legacy Hermes from C++ code

  ## Test plan
  - [x] Android: `./gradlew :packages:rn-tester:android:app:assembleDebug` — BUILD SUCCEEDED
  - [x] iOS: `xcodebuild` rn-tester on iPhone 16 Pro simulator — BUILD SUCCEEDED

Reviewed By: cortinico

Differential Revision: D104228879
…solution (facebook#56733)

Summary:

  - Remove `hermesV1Enabled` / `react.hermesV1Enabled` Gradle property and all branching it controls
  - Rename `HERMES_V1_VERSION_NAME` to `HERMES_VERSION_NAME` in `version.properties`
  - Remove `hermesV1Enabled` from `PrivateReactExtension`, `ProjectUtils`, `PropertyUtils`, `ReactPlugin`
  - Simplify `DependencyUtils.Coordinates` to single Hermes version
  - Make `-DHERMESVM_HEAP_HV_MODE=HEAP_HV_PREFER32` CMake flag unconditional
  - Remove `-DHERMES_V1_ENABLED=1` CMake argument from `ReactAndroid` and Fantom builds
  - Delete `hermesV1Enabled=true` from `gradle.properties`
  - Update all Gradle plugin tests

## Changelog:
[Android][Removed] - Remove hermesV1Enabled and simplify the code

  ## Test plan
  - [x] Gradle plugin: `./gradlew -p packages/gradle-plugin build` — BUILD SUCCESSFUL, all tests pass
  - [x] Android: `./gradlew :packages:rn-tester:android:app:assembleDebug` — BUILD SUCCESSFUL

Reviewed By: cortinico

Differential Revision: D104244582
@cipolleschi cipolleschi force-pushed the export-D104244582 branch from e19bc36 to 5a1228c Compare May 8, 2026 16:07
meta-codesync Bot pushed a commit that referenced this pull request May 8, 2026
…solution (#56733)

Summary:

  - Remove `hermesV1Enabled` / `react.hermesV1Enabled` Gradle property and all branching it controls
  - Rename `HERMES_V1_VERSION_NAME` to `HERMES_VERSION_NAME` in `version.properties`
  - Remove `hermesV1Enabled` from `PrivateReactExtension`, `ProjectUtils`, `PropertyUtils`, `ReactPlugin`
  - Simplify `DependencyUtils.Coordinates` to single Hermes version
  - Make `-DHERMESVM_HEAP_HV_MODE=HEAP_HV_PREFER32` CMake flag unconditional
  - Remove `-DHERMES_V1_ENABLED=1` CMake argument from `ReactAndroid` and Fantom builds
  - Delete `hermesV1Enabled=true` from `gradle.properties`
  - Update all Gradle plugin tests

## Changelog:
[Android][Removed] - Remove hermesV1Enabled and simplify the code

  ## Test plan
  - [x] Gradle plugin: `./gradlew -p packages/gradle-plugin build` — BUILD SUCCESSFUL, all tests pass
  - [x] Android: `./gradlew :packages:rn-tester:android:app:assembleDebug` — BUILD SUCCESSFUL

Reviewed By: cortinico

Differential Revision: D104244582
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. fb-exported meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants