- Notifications
You must be signed in to change notification settings - Fork13.2k
Inline source maps#2484
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Inline source maps#2484
Uh oh!
There was an error while loading.Please reload this page.
Conversation
mhegazy commentedMar 24, 2015
@frankwallis you might find this helpful. |
frankwallis commentedMar 24, 2015
thanks! |
mhegazy commentedMar 25, 2015
src/compiler/emitter.ts Outdated
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.
Maybe make this aDebug.fail
src/compiler/emitter.ts Outdated
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.
Uselet consistently
CyrusNajmabadi commentedMar 25, 2015
Is the algorithm provided basically saying:
If so, i would personally prefer breaking out the two parts of this process. The UTF8 encoding, and the Base64 conversion. Note: MDN already covers a good way to do this: functionutf8_to_b64(str){returnwindow.btoa(unescape(encodeURIComponent(str)));}orfunctionb64EncodeUnicode(str){returnbtoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g,function(match,p1){returnString.fromCharCode('0x'+p1);}));} Now, if we don't have access to these functions in Node or Chakra, we could still do the above steps, just individually. i.e. break up a string into utf8 bytes. Then convert those bytes to Base64. I think this would be far easier to understand (and verify). |
mhegazy commentedMar 25, 2015
mm. let me try this out then. i remember there was a reason why i did not do that :) |
mhegazy commentedApr 8, 2015
So btoa is not available on node, and escape is not available on chakra :), so there is not an easy way to use these. I did split them into two functions, and added unit tests as well. I have also handled --inlineSourceMap to be a parallel to --sourceMap instead of a dependent. The reason covertToBase64 is in utilities is to allow for targeted unit tests. I have limited compiler baselines to limt the noise in .js files as the map is actually included in the .js file. |
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.
:%s/correctelly/correctly/g
vladima commentedApr 25, 2015
LGTM |
vladima commentedApr 25, 2015
Can you also update |
mhegazy commentedApr 29, 2015
thanks@teppeis. fixed |
Support for inline source maps. As referenced in#2233, this change allows us to emit single file with source maps instead of having a separate file.