Skip to content

[Hermes][CI] Remove dual Hermes version outputs from CI workflows#56704

Draft
cipolleschi wants to merge 6 commits intomainfrom
cipolleschi/remove-legacy-hermes-phase5
Draft

[Hermes][CI] Remove dual Hermes version outputs from CI workflows#56704
cipolleschi wants to merge 6 commits intomainfrom
cipolleschi/remove-legacy-hermes-phase5

Conversation

@cipolleschi
Copy link
Copy Markdown
Contributor

@cipolleschi cipolleschi commented May 6, 2026

Summary

  • Simplify publish-release.yml: remove HERMES_V1_VERSION output, read only HERMES_VERSION_NAME
  • Simplify create-draft-release.yml: remove hermesV1Version input
  • Simplify createDraftRelease.js: remove hermesV1Version parameter and "Hermes V1 dSYMS" section from release notes
  • Simplify prebuild-ios-core.yml: read HERMES_VERSION_NAME instead of HERMES_V1_VERSION_NAME
  • Delete unused prepare-hermes-v1-app action, hermes-v1.patch, and selectLatestHermesV1Version.js

Prev PR: #56703

Changelog:

[Internal]

Test plan

  • JS tests: yarn jest --no-watchman createDraftRelease-test.js — 9/9 tests pass

@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 dual Hermes version outputs from CI workflows [Hermes][CI] Remove dual Hermes version outputs from CI workflows May 6, 2026
@cipolleschi cipolleschi force-pushed the cipolleschi/remove-legacy-hermes-phase4 branch from 78b163f to 0d69970 Compare May 7, 2026 12:59
@cipolleschi cipolleschi force-pushed the cipolleschi/remove-legacy-hermes-phase5 branch from 79eb124 to f1541da Compare May 7, 2026 12:59
@cipolleschi cipolleschi changed the base branch from cipolleschi/remove-legacy-hermes-phase4 to main May 7, 2026 13:03
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.
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.
Remove dual .hermesversion/.hermesv1version tag files — only
.hermesversion remains. Simplify hermes-utils.js to single-tag
operations, release scripts to single-version workflows, and
bump-hermes-version.js to single Hermes. Remove legacy branch
handling from release-hermes-for-branch-cut.js.
Simplify publish-release, create-draft-release, and prebuild-ios-core
workflows to use a single HERMES_VERSION. Remove the Hermes V1 dSYM
section from release notes. Delete unused prepare-hermes-v1-app action,
hermes-v1.patch, and selectLatestHermesV1Version.js.
@cipolleschi cipolleschi force-pushed the cipolleschi/remove-legacy-hermes-phase5 branch from f1541da to 3d96302 Compare May 8, 2026 09:13
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 8, 2026

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

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 8, 2026

Warning

JavaScript API change detected

This PR commits an update to ReactNativeApi.d.ts, indicating a change to React Native's public JavaScript API.

  • Please include a clear changelog message.
  • This change will be subject to additional review.

This change was flagged as: POTENTIALLY_BREAKING

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.

1 participant