Skip to content

fix(android): exclude duplicate Hermes test JNI libs - #273

Open
huytdps13400 wants to merge 1 commit into
margelo:mainfrom
huytdps13400:fix/267-androidtest-hermes-jni
Open

fix(android): exclude duplicate Hermes test JNI libs#273
huytdps13400 wants to merge 1 commit into
margelo:mainfrom
huytdps13400:fix/267-androidtest-hermes-jni

Conversation

@huytdps13400

Copy link
Copy Markdown

Summary\n\n- exclude libhermestooling.so and libhermesvm.so from the Worklets library AAR\n- keep the existing CMake Prefab links unchanged\n- let react-android and hermes-android remain the app-level owners of the Hermes runtime binaries\n\nThis prevents androidTest and Detox builds from merging duplicate Hermes JNI libraries on React Native 0.83.\n\nFixes #267\n\n## Verification\n\n- yarn typecheck\n- yarn lint\n- yarn test --runInBand: 26/26 tests passed\n- yarn prepack\n- focused exclusion contract probe\n- ANDROID_HOME set to the local SDK:\n - :react-native-worklets-core:mergeDebugAndroidTestNativeLibs\n - :app:assembleDebug\n - New Architecture and Hermes enabled\n - four ABIs built successfully\n\nThe checked-in example uses React Native 0.76.1, so it provides backward-compatibility coverage rather than reproducing the reporter's exact RN 0.83.1 dependency graph. React Native 0.83.1 Android sources were also inspected: react-android exposes the hermestooling Prefab target and hermes-engine exposes hermesvm, while their packaging configuration keeps the runtime binaries owned by the application dependencies.

Keep runtime-owned hermestooling and hermesvm binaries out of the library AAR so Android test builds do not merge duplicate copies.

Fixes margelo#267
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant