Skip to content
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

[BUGFIX release] Ensure loader.js is transpiled via targets. #18582

Merged
merged 2 commits into from
Dec 3, 2019

Conversation

rwjblue
Copy link
Member

@rwjblue rwjblue commented Nov 26, 2019

Prior to this change, the packages/loader/lib/index.js file was not transpiled (at all). However, until #18277 landed the file was still authored (manually) in IE11 compliant ES5 JavaScript. Once #18277 landed however (first released in 3.14.0-beta.1) it is impossible to use the built assets in a browser that does not support let variable declaration (e.g. Safari 9).

This ensures that packages/loader/lib/index.js passes through the same transpilation process as the rest of the application, and (confirmed manually) fixes the issue reported in ember-cli/ember-cli#8938.

Ironically, our CI did not catch this issue (even though we are properly testing in IE11) because IE11 actually supports let usage (with minor caveats).

Fixes ember-cli/ember-cli#8938

@rwjblue rwjblue requested a review from pzuraq November 26, 2019 21:15
Prior to this change, the `packages/loader/lib/index.js` file was not
transpiled (at all). However, until 4a5b372 landed the file was still
authored (manually) in IE11 compliant ES5 JavaScript. Once 4a5b372
landed however (first released in 3.14.0-beta.1) it is impossible to use
the built assets in a browser that does not support `let` variable
declaration (e.g. Safari
9).

This ensures that `packages/loader/lib/index.js` passes through the same
transpilation process as the rest of the application, and (confirmed
manually) fixes the issue reported.

Ironically, our CI did not catch this issue (even though we are properly
testing in IE11) because IE11 actually supports `let` usage (with minor
caveats).

Also, since `loader.js` is the "one thing" that does not need modules
transpilation, this also adds a new argument to `transpileTree`. Most of
the time that option is `undefined` (and therefore not used at all), but
for header files we need to avoid the module wrapping.
@rwjblue rwjblue merged commit a0f4034 into emberjs:master Dec 3, 2019
@rwjblue rwjblue deleted the fixup-loader-transpilation branch December 3, 2019 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants