Skip to content

Commit

Permalink
Migrate to using babel-preset-env. (#627)
Browse files Browse the repository at this point in the history
* Drop transpilation for IE.

`last 2 versions` will target IE10 and IE11, which we don't support...

* Migrate to using babel-preset-env.

This will lead to less transpilation (e.g. we can use native async/await
now, instead of transpiling).
  • Loading branch information
rwjblue authored and Gaurav0 committed Jun 22, 2018
1 parent d13b09f commit 1f0c682
Show file tree
Hide file tree
Showing 5 changed files with 114 additions and 3 deletions.
11 changes: 10 additions & 1 deletion app/services/ember-cli.js
Original file line number Diff line number Diff line change
Expand Up @@ -511,7 +511,16 @@ export default Ember.Service.extend({
*/
function babelOpts(moduleName) {
return {
presets: ['es2017'],
presets: [['env', {
targets: {
browsers: [
'last 2 chrome versions',
'last 2 firefox versions',
'last 2 safari versions',
'last 2 edge versions'
]
}
}]],
moduleIds: true,
moduleId: moduleName,
plugins: [
Expand Down
5 changes: 4 additions & 1 deletion config/targets.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

module.exports = {
browsers: [
'last 2 versions'
'last 2 chrome versions',
'last 2 firefox versions',
'last 2 safari versions',
'last 2 edge versions'
]
};
5 changes: 4 additions & 1 deletion ember-cli-build.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,9 @@ module.exports = function(defaults) {
},
'babel-standalone': {
import: ['babel.js']
},
'babel-preset-env-standalone': {
import: ['babel-preset-env.js']
}
},
sourcemaps: {
Expand Down Expand Up @@ -143,7 +146,7 @@ function buildQUnitTree(app) {
const Rollup = require('broccoli-rollup');
const path = require('path');
const babelOpts = require('./lib/babel-opts');

let preprocessJs = app.registry.registry.js[0].toTree;

let buildPreprocessedAddon = function(addonName) {
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"devDependencies": {
"@ember/test-helpers": "~0.7.18",
"babel-plugin-ember-modules-api-polyfill": "^2.3.0",
"babel-preset-env-standalone": "^1.6.2",
"babel-preset-es2017": "^6.24.1",
"babel-standalone": "^6.26.0",
"broccoli-asset-rev": "^2.4.5",
Expand Down
95 changes: 95 additions & 0 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -722,6 +722,13 @@ babel-plugin-debug-macros@^0.1.10, babel-plugin-debug-macros@^0.1.11:
dependencies:
semver "^5.3.0"

babel-plugin-dynamic-import-webpack@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-webpack/-/babel-plugin-dynamic-import-webpack-1.0.2.tgz#cb83435833e073f1600c0188a95edacfdc07c256"
dependencies:
babel-plugin-syntax-dynamic-import "^6.18.0"
babel-template "^6.26.0"

babel-plugin-ember-modules-api-polyfill@^1.4.2:
version "1.6.0"
resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-1.6.0.tgz#abd1afa4237b3121cb51222f9bf3283cad8990aa"
Expand Down Expand Up @@ -796,6 +803,10 @@ babel-plugin-syntax-async-functions@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95"

babel-plugin-syntax-dynamic-import@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da"

babel-plugin-syntax-exponentiation-operator@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de"
Expand Down Expand Up @@ -1019,6 +1030,75 @@ babel-polyfill@^6.26.0:
core-js "^2.5.0"
regenerator-runtime "^0.10.5"

babel-preset-env-standalone@^1.6.2:
version "1.6.2"
resolved "https://registry.yarnpkg.com/babel-preset-env-standalone/-/babel-preset-env-standalone-1.6.2.tgz#c3a386027c5215f7fb1790226c27de5b0eb98212"
dependencies:
babel-plugin-check-es2015-constants "^6.22.0"
babel-plugin-dynamic-import-webpack "^1.0.1"
babel-plugin-syntax-trailing-function-commas "^6.22.0"
babel-plugin-transform-async-to-generator "^6.22.0"
babel-plugin-transform-es2015-arrow-functions "^6.22.0"
babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
babel-plugin-transform-es2015-block-scoping "^6.23.0"
babel-plugin-transform-es2015-classes "^6.23.0"
babel-plugin-transform-es2015-computed-properties "^6.22.0"
babel-plugin-transform-es2015-destructuring "^6.23.0"
babel-plugin-transform-es2015-duplicate-keys "^6.22.0"
babel-plugin-transform-es2015-for-of "^6.23.0"
babel-plugin-transform-es2015-function-name "^6.22.0"
babel-plugin-transform-es2015-literals "^6.22.0"
babel-plugin-transform-es2015-modules-amd "^6.22.0"
babel-plugin-transform-es2015-modules-commonjs "^6.23.0"
babel-plugin-transform-es2015-modules-systemjs "^6.23.0"
babel-plugin-transform-es2015-modules-umd "^6.23.0"
babel-plugin-transform-es2015-object-super "^6.22.0"
babel-plugin-transform-es2015-parameters "^6.23.0"
babel-plugin-transform-es2015-shorthand-properties "^6.22.0"
babel-plugin-transform-es2015-spread "^6.22.0"
babel-plugin-transform-es2015-sticky-regex "^6.22.0"
babel-plugin-transform-es2015-template-literals "^6.22.0"
babel-plugin-transform-es2015-typeof-symbol "^6.23.0"
babel-plugin-transform-es2015-unicode-regex "^6.22.0"
babel-plugin-transform-exponentiation-operator "^6.22.0"
babel-plugin-transform-regenerator "^6.22.0"
babel-preset-env "1.6.0"

[email protected]:
version "1.6.0"
resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4"
dependencies:
babel-plugin-check-es2015-constants "^6.22.0"
babel-plugin-syntax-trailing-function-commas "^6.22.0"
babel-plugin-transform-async-to-generator "^6.22.0"
babel-plugin-transform-es2015-arrow-functions "^6.22.0"
babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
babel-plugin-transform-es2015-block-scoping "^6.23.0"
babel-plugin-transform-es2015-classes "^6.23.0"
babel-plugin-transform-es2015-computed-properties "^6.22.0"
babel-plugin-transform-es2015-destructuring "^6.23.0"
babel-plugin-transform-es2015-duplicate-keys "^6.22.0"
babel-plugin-transform-es2015-for-of "^6.23.0"
babel-plugin-transform-es2015-function-name "^6.22.0"
babel-plugin-transform-es2015-literals "^6.22.0"
babel-plugin-transform-es2015-modules-amd "^6.22.0"
babel-plugin-transform-es2015-modules-commonjs "^6.23.0"
babel-plugin-transform-es2015-modules-systemjs "^6.23.0"
babel-plugin-transform-es2015-modules-umd "^6.23.0"
babel-plugin-transform-es2015-object-super "^6.22.0"
babel-plugin-transform-es2015-parameters "^6.23.0"
babel-plugin-transform-es2015-shorthand-properties "^6.22.0"
babel-plugin-transform-es2015-spread "^6.22.0"
babel-plugin-transform-es2015-sticky-regex "^6.22.0"
babel-plugin-transform-es2015-template-literals "^6.22.0"
babel-plugin-transform-es2015-typeof-symbol "^6.23.0"
babel-plugin-transform-es2015-unicode-regex "^6.22.0"
babel-plugin-transform-exponentiation-operator "^6.22.0"
babel-plugin-transform-regenerator "^6.22.0"
browserslist "^2.1.2"
invariant "^2.2.2"
semver "^5.3.0"

babel-preset-env@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.7.0.tgz#dea79fa4ebeb883cd35dab07e260c1c9c04df77a"
Expand Down Expand Up @@ -1905,6 +1985,13 @@ browserify@^16.2.0:
vm-browserify "^1.0.0"
xtend "^4.0.0"

browserslist@^2.1.2:
version "2.11.3"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2"
dependencies:
caniuse-lite "^1.0.30000792"
electron-to-chromium "^1.3.30"

browserslist@^3.1.1, browserslist@^3.2.6:
version "3.2.8"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6"
Expand Down Expand Up @@ -2036,6 +2123,10 @@ can-symlink@^1.0.0:
dependencies:
tmp "0.0.28"

caniuse-lite@^1.0.30000792:
version "1.0.30000856"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000856.tgz#ecc16978135a6f219b138991eb62009d25ee8daa"

caniuse-lite@^1.0.30000844:
version "1.0.30000850"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000850.tgz#e68a88db4ea598b4c33b8419f7385473e4802495"
Expand Down Expand Up @@ -2895,6 +2986,10 @@ [email protected]:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"

electron-to-chromium@^1.3.30:
version "1.3.50"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.50.tgz#7438b76f92b41b919f3fbdd350fbd0757dacddf7"

electron-to-chromium@^1.3.47:
version "1.3.48"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.48.tgz#d3b0d8593814044e092ece2108fc3ac9aea4b900"
Expand Down

0 comments on commit 1f0c682

Please sign in to comment.