[0.88] Make Hermes source archive extraction repository-agnostic
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 75/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- cmake, javascript, react-native
- Domain
- build-system
Research direction
On the 0.88 branch, find unzipHermes and compare its archive extraction behavior with the linked PR. Reproduce with ./fantom/reproduce.sh build 0.88-stable; done means the Hermes sources are extracted at the expected level and the build gets past configureBuildForHermesWithDebugger.
Written by the indexing model from the issue text.
Description
Target Branch
0.88
Link to commit or PR to be picked
https://github.com/react/react-native/pull/59589
Description
Building Hermes from source on 0.88 fails. The tarball 0.88 downloads, https://github.com/facebook/hermes/tarball/<version>, now redirects to meta/hermes, so its top folder is meta-hermes-<sha>, while 0.88's unzipHermes strips only a facebook-hermes- prefix, so the sources land one folder too deep and configureBuildForHermesWithDebugger finds no CMakeLists.txt. react/react-native#59589 (react/react-native@f6a5042c8445c29d169a8b0a641fdd5e47794ecd on main) strips the top folder whatever its name.
On 0.88-stable at 0a83e72f67d737569c2ac4bf3605126bbc79245a, Fantom's CI build (yarn workspace @react-native/fantom build) stops there:
> Task :packages:react-native:ReactAndroid:hermes-engine:configureBuildForHermesWithDebugger FAILED
CMake Error: The source directory "/react-native/packages/react-native/sdks/hermes" does not appear to contain CMakeLists.txt.
The same build on main gets past Hermes. To reproduce: ./fantom/reproduce.sh build 0.88-stable in https://github.com/YevheniiKotyrlo/react-native-fantom-reproducer.
- Dominant language
- JavaScript
- Stars
- 429
- Forks
- 11
- Avg merge
- 4h 13m
- Merged PRs (30d)
- 7
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from reactwg/react-native-releases
-
Type Pick Request
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
reactwg/react-native-releases#1487 · 1 comment ·
-
Type Pick Request
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
reactwg/react-native-releases#1472 · 1 comment ·
-
Type Pick Request
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
reactwg/react-native-releases#1435 · 1 comment ·
-
Type Pick Request
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
reactwg/react-native-releases#1427 · 1 comment ·
-
Type Pick Request
Difficulty 1/5 Under an hour Newbie friendliness 78/100
reactwg/react-native-releases#1349 · 1 comment · 1 reaction ·
All issues in reactwg/react-native-releases
Similar issues
-
neutral:fix
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
wazuh/wazuh-documentation#10611 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
remotion-dev/remotion#12905 ·
Maintainers usually reply within 1 day
-
enhancement websites
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
quarto-dev/quarto-cli#15255 · 1 comment ·
Maintainers usually reply within 1 day
-
Money fields reject amounts that aren't multiples of $500, so Find cliffs silently does nothingOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
PolicyEngine/cliff-watch#44 ·