-
-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Debug Id reference to Hermes Bundle from the Source Map #1667
Conversation
This pull request has gone three weeks without activity. In another week, I will close it. But! If you comment or otherwise update it, I will reset the clock, and if you label it "A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀 |
…debug id add option to not copy debug id
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work! I have some notes, though, most of them stylistic.
@loewenheim Thank you for all the comments, I updated everything besides the |
I don't even think it's overhead at runtime, it should literally do nothing. |
This PR adds support for RN Hermes bundles with debug IDs. As we can't read Hermes byte code we need to fill the debug id from the referenced source map to the headers of the Hermes bundle.
This PR also updates Xcode Call functionality to be able to intercept
hermesc
andcompose-source-maps.js
calls by RN tooling. This is needed for recording the path of the Hermes Bundle and final Composed Hermes source maps.Xcode Call has now also ability to copy debug if from the packager source map to the composed Hermes source map. This way the debug ids will work with both JSC and Hermes builds without directly changing the Hermes bundle. Metro packager plugin will inject the debug id into the plain JS the same we do it on the web.
Note: In the future, we might be able to inject debug id directly into the Hermes bundle but for now, these changes are needed.