Skip to content

[Hermes][iOS] Remove RCT_HERMES_V1_ENABLED from CocoaPods infrastructure#56701

Open
cipolleschi wants to merge 4 commits intomainfrom
cipolleschi/remove-legacy-hermes-phase3
Open

[Hermes][iOS] Remove RCT_HERMES_V1_ENABLED from CocoaPods infrastructure#56701
cipolleschi wants to merge 4 commits intomainfrom
cipolleschi/remove-legacy-hermes-phase3

Conversation

@cipolleschi
Copy link
Copy Markdown
Contributor

@cipolleschi cipolleschi commented May 6, 2026

Summary

  • Remove RCT_HERMES_V1_ENABLED environment variable from react_native_pods.rb
  • Simplify jsengine.rb to always use .hermesversion tag file
  • Remove conditional HERMES_V1_ENABLED=1 preprocessor definition from utils.rb
  • Simplify hermes-engine.podspec: always read HERMES_VERSION_NAME, use V1 source files, remove legacy inspector subspecs
  • Simplify hermes-utils.rb: remove hermes_v1_enabled() function, always use 250829098.0.0-stable branch, always use .hermesversion tag file

Prev PR: #56700
Next PR: #56703

Changelog:

[iOS][Removed] - Remove the RCT_HERMES_V1_ENABLED from Cocoapods

Test plan

  • iOS: bundle exec pod install — success
  • iOS: xcodebuild rn-tester on iPhone 16 Pro simulator — BUILD SUCCEEDED

@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 6, 2026
@facebook-github-tools facebook-github-tools Bot added p: Facebook Partner: Facebook Partner labels May 6, 2026
@cipolleschi cipolleschi changed the title Remove RCT_HERMES_V1_ENABLED from CocoaPods infrastructure [Hermes][iOS] Remove RCT_HERMES_V1_ENABLED from CocoaPods infrastructure May 6, 2026
@cipolleschi cipolleschi changed the base branch from cipolleschi/remove-legacy-hermes-phase2 to main May 7, 2026 12:53
@cipolleschi cipolleschi force-pushed the cipolleschi/remove-legacy-hermes-phase3 branch from 3b672ef to 00d6b46 Compare May 7, 2026 12:59
Legacy Hermes support is no longer needed since 0.86 branch has been cut.
This removes all dead code behind `!defined(HERMES_V1_ENABLED)` guards
and the CMake infrastructure that set the HERMES_V1_ENABLED compile
definition.
…solution

Since legacy Hermes is no longer supported, remove the hermesV1Enabled
toggle from the Gradle plugin, version.properties, and all build scripts.
HERMES_V1_VERSION_NAME is renamed to HERMES_VERSION_NAME as the single
Hermes version. CMake flags like HERMESVM_HEAP_HV_MODE are now
unconditional.
…solution

Since legacy Hermes is no longer supported, remove the hermesV1Enabled
toggle from the Gradle plugin, version.properties, and all build scripts.
HERMES_V1_VERSION_NAME is renamed to HERMES_VERSION_NAME as the single
Hermes version. CMake flags like HERMESVM_HEAP_HV_MODE are now
unconditional.
@cipolleschi cipolleschi force-pushed the cipolleschi/remove-legacy-hermes-phase3 branch from 00d6b46 to c491566 Compare May 7, 2026 15:35
Remove the RCT_HERMES_V1_ENABLED environment variable and all conditional
logic in the CocoaPods/Ruby files. The podspec now always reads
HERMES_VERSION_NAME, uses V1 source files, and omits legacy inspector
subspecs. The HERMES_V1_ENABLED=1 preprocessor define is no longer set
since no C++ code checks for it.
@cipolleschi cipolleschi force-pushed the cipolleschi/remove-legacy-hermes-phase3 branch from c491566 to cdcd377 Compare May 7, 2026 15:40
@cipolleschi cipolleschi marked this pull request as ready for review May 7, 2026 15:40
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 7, 2026

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

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.

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. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants