So glad to see the v2.
Thanks to all contributors.
Can we use without Hermes on android, is it possible?
Right now there might be some incompatibilities in between Hermes and other libraries.
For example React Native Firebase claims it doesn't work with Hermes. Might be some other cases.
If Reanimated V2 would work without Hermes it would be superuseful.
@likern react-native-firebase works just fine with hermes, react-native-firebase/database is the only dependency that doesn't work well with hermes but if you're not using that I confirm it's working fine for us (already in production)
At the moment also Realm doesn鈥檛 support Hermes, can I use reanimated v2 without Hermes?
I believe in the near future the only way to have remote debugger and TurboModules both enabled you need to use Hermes - that's true for both iOS and Android. There is no support for Chrome Debugging Protocol in JSC on both Android and iOS, so we can't debug directly on the device/simulator which is the required thing for JSI stuff to work.
As far as I can tell (I could be wrong), it should be fairly easy to fix/change.
Here is Hermes instantiation on Android: https://github.com/software-mansion/react-native-reanimated/commit/ff1c09035d6124ea736f97e7dce16e42e76a00e9#diff-b7ff30d0d6a257b9342da718c2271717R49
Here is JSC on iOS:https://github.com/software-mansion/react-native-reanimated/commit/ff1c09035d6124ea736f97e7dce16e42e76a00e9#diff-98e88c57447fb6fd17d593fcb13e1a5dR99
As you can see, it's only ever a local variable, later passed to shared code which takes jsi::Runtime, and doesn't seem to have any specific Hermes-specific knowledge. https://github.com/software-mansion/react-native-reanimated/commit/ff1c09035d6124ea736f97e7dce16e42e76a00e9#diff-59babfa779dafd8770e78cfb5cc1df8cR52
I believe in the near future the only way to have remote debugger and TurboModules both enabled you need to use Hermes - that's true for both iOS and Android.
@terrysahaidak You can use Safari web inspector to debug JSC remotely
By remote debugging I mean debugger in chrome or/and VSCode - just the way people (and myself) used to debug everything.
I used JSC debugger in Safari few times for debugging Reanimated's context. But it was worst dubugging experience in my life. I don't use Safari as well as majority of the users. So the devtools were really confusing for me as well as it were working in 20% cases only (showing logs and all the other stuff), so no, Safari for debugging is not the option in my opinion.
@terrysahaidak Sure :) I know you knew this, I only mentioned this for the benefit of others in the thread who may not be aware. There are legitimate reasons to stick to JSC (or V8), even if it means debugging is more difficult.
At the moment also Realm doesn鈥檛 support Hermes, can I use reanimated v2 without Hermes?
have you tried using? was it giving errors?
We are currently not planning to run v2 without hermes.
@karol-bisztyga Hey, is my assessment of the situation (https://github.com/software-mansion/react-native-reanimated/issues/843#issuecomment-671253832) inaccurate? In other words, is running via JSC impossible/bad in some way, or just not something you're planning to do (but would accept a PR adding this capability)?
Disclaimer: I don't actively develop Reanimated 2 right now and I may have understood something wrong.
I talked a bit with TurboTeam and seems like JSC and Hermes are interchangeable but we don't want to support JSC right now for two reasons:
@kmagiera may give some more insight about JSC support.
Most helpful comment
Right now there might be some incompatibilities in between Hermes and other libraries.
For example React Native Firebase claims it doesn't work with Hermes. Might be some other cases.
If Reanimated V2 would work without Hermes it would be superuseful.