diff --git a/packages/babel-core/test/api.js b/packages/babel-core/test/api.js index ed58229050..367a03fb5e 100644 --- a/packages/babel-core/test/api.js +++ b/packages/babel-core/test/api.js @@ -311,7 +311,7 @@ describe("api", function () { }, // env preset - presetEnv, + [presetEnv, { targets: { browsers: "ie 6" } }], // Third preset for Flow. () => ({ diff --git a/packages/babel-core/test/config-chain.js b/packages/babel-core/test/config-chain.js index 68c204603b..111f26b692 100644 --- a/packages/babel-core/test/config-chain.js +++ b/packages/babel-core/test/config-chain.js @@ -4,6 +4,7 @@ import path from "path"; import { fileURLToPath } from "url"; import escapeRegExp from "lodash/escapeRegExp"; import * as babel from "../lib"; +import getTargets from "@babel/helper-compilation-targets"; const dirname = path.dirname(fileURLToPath(import.meta.url)); @@ -976,6 +977,7 @@ describe("buildConfigChain", function () { }); describe("config files", () => { + const defaultTargets = getTargets(); const getDefaults = () => ({ babelrc: false, configFile: false, @@ -988,7 +990,7 @@ describe("buildConfigChain", function () { plugins: [], presets: [], cloneInputAst: true, - targets: {}, + targets: defaultTargets, assumptions: {}, }); const realEnv = process.env.NODE_ENV; diff --git a/packages/babel-core/test/fixtures/transformation/misc/regression-4855/options.json b/packages/babel-core/test/fixtures/transformation/misc/regression-4855/options.json index 607b005f5e..e63fa06ff0 100644 --- a/packages/babel-core/test/fixtures/transformation/misc/regression-4855/options.json +++ b/packages/babel-core/test/fixtures/transformation/misc/regression-4855/options.json @@ -1,5 +1,5 @@ { "compact": false, - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": ["proposal-object-rest-spread"] } diff --git a/packages/babel-core/test/fixtures/transformation/misc/regression-7064/options.json b/packages/babel-core/test/fixtures/transformation/misc/regression-7064/options.json index 4811663c7e..9121cf53ad 100644 --- a/packages/babel-core/test/fixtures/transformation/misc/regression-7064/options.json +++ b/packages/babel-core/test/fixtures/transformation/misc/regression-7064/options.json @@ -1,4 +1,4 @@ { "plugins": ["transform-async-to-generator"], - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-helper-compilation-targets/src/index.js b/packages/babel-helper-compilation-targets/src/index.js index be5861d6ca..9459e7f916 100644 --- a/packages/babel-helper-compilation-targets/src/index.js +++ b/packages/babel-helper-compilation-targets/src/index.js @@ -191,16 +191,23 @@ export default function getTargets( !options.ignoreBrowserslistConfig && !hasTargets; if (!browsers && shouldSearchForConfig) { - browsers = - browserslist.loadConfig({ - config: options.configFile, - path: options.configPath, - env: options.browserslistEnv, - }) ?? - // If no targets are passed, we need to overwrite browserslist's defaults - // so that we enable all transforms (acting like the now deprecated - // preset-latest). - []; + browsers = browserslist.loadConfig({ + config: options.configFile, + path: options.configPath, + env: options.browserslistEnv, + }); + if (browsers == null) { + if (process.env.BABEL_8_BREAKING) { + // In Babel 8, if no targets are passed, we use browserslist's defaults + // and exclude IE 11. + browsers = ["defaults, not ie 11"]; + } else { + // If no targets are passed, we need to overwrite browserslist's defaults + // so that we enable all transforms (acting like the now deprecated + // preset-latest). + browsers = []; + } + } } // `esmodules` as a target indicates the specific set of browsers supporting ES Modules. diff --git a/packages/babel-helper-compilation-targets/test/targets-parser.spec.js b/packages/babel-helper-compilation-targets/test/targets-parser.spec.js index f8910af82f..4045147755 100644 --- a/packages/babel-helper-compilation-targets/test/targets-parser.spec.js +++ b/packages/babel-helper-compilation-targets/test/targets-parser.spec.js @@ -282,11 +282,21 @@ describe("getTargets", () => { ).toMatchSnapshot(); }); - it("'intersect' behaves like 'true' if no browsers are specified", () => { - expect(getTargets({ esmodules: "intersect" })).toEqual( - getTargets({ esmodules: true }, { ignoreBrowserslistConfig: true }), - ); - }); + (process.env.BABEL_8_BREAKING ? it.skip : it)( + "'intersect' behaves like 'true' if no browsers are specified - Babel 7", + () => { + expect(getTargets({ esmodules: "intersect" })).toEqual( + getTargets({ esmodules: true }, { ignoreBrowserslistConfig: true }), + ); + }, + ); + + (process.env.BABEL_8_BREAKING ? it : it.skip)( + "'intersect' behaves like no-op if no browsers are specified", + () => { + expect(getTargets({ esmodules: "intersect" })).toEqual(getTargets({})); + }, + ); it("'intersect' behaves like 'true' if no browsers are specified and the browserslist config is ignored", () => { expect( diff --git a/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/declaration-exec/options.json b/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/declaration-exec/options.json index 3545e7af69..c427388ca8 100644 --- a/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/declaration-exec/options.json +++ b/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/declaration-exec/options.json @@ -3,7 +3,7 @@ "transform-async-to-generator", "proposal-async-generator-functions" ], - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "parserOpts": { "allowReturnOutsideFunction": true } diff --git a/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/yield-exec/options.json b/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/yield-exec/options.json index 3545e7af69..c427388ca8 100644 --- a/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/yield-exec/options.json +++ b/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/async-generators/yield-exec/options.json @@ -3,7 +3,7 @@ "transform-async-to-generator", "proposal-async-generator-functions" ], - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "parserOpts": { "allowReturnOutsideFunction": true } diff --git a/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/for-await/async-generator-exec/options.json b/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/for-await/async-generator-exec/options.json index 3545e7af69..c427388ca8 100644 --- a/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/for-await/async-generator-exec/options.json +++ b/packages/babel-plugin-proposal-async-generator-functions/test/fixtures/for-await/async-generator-exec/options.json @@ -3,7 +3,7 @@ "transform-async-to-generator", "proposal-async-generator-functions" ], - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "parserOpts": { "allowReturnOutsideFunction": true } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/options.json b/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/options.json index b72ac79409..b565dd4931 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/options.json +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/options.json @@ -1,6 +1,6 @@ { "plugins": ["proposal-class-properties"], - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "assumptions": { "setPublicClassFields": true } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/options.json b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/options.json index 002b4aa0d5..6d52631c71 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/options.json +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/options.json @@ -1,3 +1,3 @@ { - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/options.json b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/options.json index 5f6a3f8f76..fb5b42f969 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/options.json +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/options.json @@ -1,4 +1,4 @@ { "plugins": [["proposal-class-properties", { "loose": true }]], - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/options.json b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/options.json index 6cf84dea42..642298737e 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/options.json +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/options.json @@ -1,4 +1,4 @@ { "plugins": ["proposal-class-properties"], - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/options.json b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/options.json index f79fa70719..e59345ce2d 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/options.json +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/options.json @@ -1,4 +1,4 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": ["proposal-class-properties"] } diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-constructors/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-constructors/options.json index e32183cde2..e12b2cb9ef 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-constructors/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-constructors/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }] diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-export-default/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-export-default/options.json index e32183cde2..e12b2cb9ef 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-export-default/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-export-default/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }] diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-ordering/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-ordering/options.json index e32183cde2..e12b2cb9ef 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-ordering/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-ordering/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }] diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-methods/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-methods/options.json index 4c937c6078..87162d7b2c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-methods/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-methods/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }], diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-properties/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-properties/options.json index 4c937c6078..87162d7b2c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-properties/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-prototype-properties/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }], diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-methods/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-methods/options.json index 4c937c6078..87162d7b2c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-methods/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-methods/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }], diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-properties/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-properties/options.json index 4c937c6078..87162d7b2c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-properties/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-class-static-properties/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }], diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-methods/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-methods/options.json index 4c937c6078..87162d7b2c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-methods/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-methods/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }], diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-ordering/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-ordering/options.json index e32183cde2..e12b2cb9ef 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-ordering/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-ordering/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }] diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-properties/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-properties/options.json index 4c937c6078..87162d7b2c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-properties/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-object-properties/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ ["proposal-decorators", { "legacy": true }], ["proposal-class-properties", { "loose": true }], diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/options.json b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/options.json index 002b4aa0d5..6d52631c71 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/options.json +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/options.json @@ -1,3 +1,3 @@ { - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-ignoreFunctionLength/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-ignoreFunctionLength/options.json index ec966b0b43..7df3280c97 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-ignoreFunctionLength/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-ignoreFunctionLength/options.json @@ -4,5 +4,8 @@ ], "assumptions": { "ignoreFunctionLength": true + }, + "targets": { + "browsers": "ie 6" } } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties-with-useBuiltIns/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties-with-useBuiltIns/options.json index 4bdbbc0de1..c7ccf992ec 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties-with-useBuiltIns/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties-with-useBuiltIns/options.json @@ -2,5 +2,8 @@ "plugins": [["proposal-object-rest-spread", { "useBuiltIns": true }]], "assumptions": { "setSpreadProperties": true + }, + "targets": { + "browsers": "ie 6" } } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties/options.json index 554a8be11b..21d2174e59 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/assumption-setSpreadProperties/options.json @@ -2,5 +2,8 @@ "plugins": ["proposal-object-rest-spread"], "assumptions": { "setSpreadProperties": true + }, + "targets": { + "browsers": "ie 6" } } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-rest/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-rest/options.json index 5f1948cd56..3a89f855a5 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-rest/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-rest/options.json @@ -1,3 +1,6 @@ { - "plugins": ["proposal-object-rest-spread"] + "plugins": ["proposal-object-rest-spread"], + "targets": { + "browsers": "ie 6" + } } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread-loose/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread-loose/options.json index 7f3c40b6a6..885b11b61b 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread-loose/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread-loose/options.json @@ -1,5 +1,8 @@ { "plugins": [ ["proposal-object-rest-spread", { "loose": true }] - ] + ], + "targets": { + "browsers": "ie 6" + } } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread/options.json index 5f1948cd56..3a89f855a5 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/object-spread/options.json @@ -1,3 +1,6 @@ { - "plugins": ["proposal-object-rest-spread"] + "plugins": ["proposal-object-rest-spread"], + "targets": { + "browsers": "ie 6" + } } diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/regression/options.json b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/regression/options.json index 5f1948cd56..3a89f855a5 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/regression/options.json +++ b/packages/babel-plugin-proposal-object-rest-spread/test/fixtures/regression/options.json @@ -1,3 +1,6 @@ { - "plugins": ["proposal-object-rest-spread"] + "plugins": ["proposal-object-rest-spread"], + "targets": { + "browsers": "ie 6" + } } diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/options.json b/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/options.json index 2f50279ab7..6eab718e4a 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/options.json +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/options.json @@ -1,4 +1,4 @@ { "plugins": ["transform-exponentiation-operator"], - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-loose-return-type-annotation/options.json b/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-loose-return-type-annotation/options.json index 07337dd5cf..2f562d61e6 100644 --- a/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-loose-return-type-annotation/options.json +++ b/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-loose-return-type-annotation/options.json @@ -1,4 +1,4 @@ { - "presets": [["env", { "loose": true }]], + "presets": [["env", { "loose": true, "targets": { "browsers": "ie 6" } }]], "plugins": ["transform-flow-comments"] } diff --git a/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-return-type-annotation/options.json b/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-return-type-annotation/options.json index 3d975354a2..1860d4f2e4 100644 --- a/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-return-type-annotation/options.json +++ b/packages/babel-plugin-transform-flow-comments/test/fixtures/flow-comments/transformed-class-method-return-type-annotation/options.json @@ -1,4 +1,4 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": ["transform-flow-comments"] } diff --git a/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-loose-return-type-annotation/options.json b/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-loose-return-type-annotation/options.json index 574d8d5a5b..39eef8527f 100644 --- a/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-loose-return-type-annotation/options.json +++ b/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-loose-return-type-annotation/options.json @@ -1,4 +1,4 @@ { - "presets": [["env", { "loose": true }]], + "presets": [["env", { "loose": true, "targets": { "browsers": "ie 6" } }]], "plugins": ["transform-flow-strip-types"] } diff --git a/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-return-type-annotation/options.json b/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-return-type-annotation/options.json index 723a208427..cff28c5916 100644 --- a/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-return-type-annotation/options.json +++ b/packages/babel-plugin-transform-flow-strip-types/test/fixtures/regression/transformed-class-method-return-type-annotation/options.json @@ -1,4 +1,4 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": ["transform-flow-strip-types"] } diff --git a/packages/babel-plugin-transform-function-name/test/fixtures/function-name/export-default-arrow-renaming-es3/options.json b/packages/babel-plugin-transform-function-name/test/fixtures/function-name/export-default-arrow-renaming-es3/options.json index 1407daf11d..d57456135b 100644 --- a/packages/babel-plugin-transform-function-name/test/fixtures/function-name/export-default-arrow-renaming-es3/options.json +++ b/packages/babel-plugin-transform-function-name/test/fixtures/function-name/export-default-arrow-renaming-es3/options.json @@ -1,5 +1,5 @@ { - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ "transform-member-expression-literals", "transform-property-literals" diff --git a/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/4462-T7565/options.json b/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/4462-T7565/options.json index 002b4aa0d5..6d52631c71 100644 --- a/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/4462-T7565/options.json +++ b/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/4462-T7565/options.json @@ -1,3 +1,3 @@ { - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7160/options.json b/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7160/options.json index 002b4aa0d5..6d52631c71 100644 --- a/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7160/options.json +++ b/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7160/options.json @@ -1,3 +1,3 @@ { - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7272/options.json b/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7272/options.json index 002b4aa0d5..6d52631c71 100644 --- a/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7272/options.json +++ b/packages/babel-plugin-transform-modules-commonjs/test/fixtures/regression/T7272/options.json @@ -1,3 +1,3 @@ { - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/iife-this-9385/options.json b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/iife-this-9385/options.json index cc760c8a6c..23fe7140e6 100644 --- a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/iife-this-9385/options.json +++ b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/iife-this-9385/options.json @@ -1,4 +1,4 @@ { "plugins": ["transform-typescript"], - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-10879/output.js b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-10879/output.js index c3335df084..e5b9755daf 100644 --- a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-10879/output.js +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-10879/output.js @@ -4,19 +4,17 @@ var _react = babelHelpers.interopRequireDefault(require("react")); var _jsxRuntime = require("react/jsx-runtime"); -var namespace = { - MyComponent: function MyComponent(props) { - return props.name; - } +const namespace = { + MyComponent: props => props.name }; -var buildTest = function buildTest(name) { +const buildTest = name => { var _MyComponent; - var MyComponent = namespace.MyComponent; - return function () { - return _MyComponent || (_MyComponent = /*#__PURE__*/(0, _jsxRuntime.jsx)(MyComponent, { - name: name - })); - }; + const { + MyComponent + } = namespace; + return () => _MyComponent || (_MyComponent = /*#__PURE__*/(0, _jsxRuntime.jsx)(MyComponent, { + name: name + })); }; diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-7610/output.js b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-7610/output.js index 9b8eb7bfc1..7b302c8c33 100644 --- a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-7610/output.js +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/integration/issue-7610/output.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports["default"] = void 0; +exports.default = void 0; var _Parent = babelHelpers.interopRequireDefault(require("./Parent")); @@ -11,18 +11,17 @@ var _Child2 = babelHelpers.interopRequireDefault(require("./Child")); var _jsxRuntime = require("react/jsx-runtime"); -function MyComponent(_ref) { +function MyComponent({ + closeFn +}) { var _Child; - var closeFn = _ref.closeFn; - return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Parent["default"], { - render: function render() { - return _Child || (_Child = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Child2["default"], { - closeFn: closeFn - })); - } + return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Parent.default, { + render: () => _Child || (_Child = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Child2.default, { + closeFn: closeFn + })) }); } -var _default = _Parent["default"]; -exports["default"] = _default; +var _default = _Parent.default; +exports.default = _default; diff --git a/packages/babel-plugin-transform-regenerator/test/fixtures/class-argument-scope/options.json b/packages/babel-plugin-transform-regenerator/test/fixtures/class-argument-scope/options.json index 002b4aa0d5..6d52631c71 100644 --- a/packages/babel-plugin-transform-regenerator/test/fixtures/class-argument-scope/options.json +++ b/packages/babel-plugin-transform-regenerator/test/fixtures/class-argument-scope/options.json @@ -1,3 +1,3 @@ { - "presets": ["env"] + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] } diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/options.json index 023e5c3a49..a7767c84c1 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/options.json +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/options.json @@ -1,4 +1,5 @@ { "externalHelpers": false, - "os": ["linux", "darwin"] + "os": ["linux", "darwin"], + "targets": { "browsers": "ie 6, ios 4" } } diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-proposals/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-proposals/options.json index fa928713e9..a09e221553 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-proposals/options.json +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-proposals/options.json @@ -1,6 +1,6 @@ { "externalHelpers": true, - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ [ "transform-runtime", diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-stable/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-stable/options.json index 23b3353cda..371a05ff02 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-stable/options.json +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-corejs3-stable/options.json @@ -1,6 +1,6 @@ { "externalHelpers": true, - "presets": ["env"], + "presets": [["env", { "targets": { "browsers": "ie 6" } }]], "plugins": [ [ "transform-runtime", diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/options.json index 8da9fa5b3d..5d7aba5625 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/options.json +++ b/packages/babel-plugin-transform-runtime/test/fixtures/options.json @@ -1,3 +1,4 @@ { - "externalHelpers": false + "externalHelpers": false, + "targets": { "browsers": "ie 6, ios 4" } } diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/.entry-all-exec/exec.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/.entry-all-exec/exec.js new file mode 100644 index 0000000000..38d3f9ccb9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/.entry-all-exec/exec.js @@ -0,0 +1,3 @@ +if (parseInt(process.version.slice(1)) > 5) { + require('@babel/polyfill'); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/.entry-all-exec/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/.entry-all-exec/options.json new file mode 100644 index 0000000000..ebc91c6d0f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/.entry-all-exec/options.json @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/options.json new file mode 100644 index 0000000000..e5716ed34f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/output.mjs new file mode 100644 index 0000000000..dbac8b661f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all-babel-7/output.mjs @@ -0,0 +1,150 @@ +import "core-js/modules/es6.array.copy-within.js"; +import "core-js/modules/es6.array.every.js"; +import "core-js/modules/es6.array.fill.js"; +import "core-js/modules/es6.array.filter.js"; +import "core-js/modules/es6.array.find.js"; +import "core-js/modules/es6.array.find-index.js"; +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.for-each.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es7.array.includes.js"; +import "core-js/modules/es6.array.index-of.js"; +import "core-js/modules/es6.array.is-array.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.last-index-of.js"; +import "core-js/modules/es6.array.map.js"; +import "core-js/modules/es6.array.of.js"; +import "core-js/modules/es6.array.reduce.js"; +import "core-js/modules/es6.array.reduce-right.js"; +import "core-js/modules/es6.array.slice.js"; +import "core-js/modules/es6.array.some.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es6.array.species.js"; +import "core-js/modules/es6.date.now.js"; +import "core-js/modules/es6.date.to-iso-string.js"; +import "core-js/modules/es6.date.to-json.js"; +import "core-js/modules/es6.date.to-primitive.js"; +import "core-js/modules/es6.date.to-string.js"; +import "core-js/modules/es6.function.bind.js"; +import "core-js/modules/es6.function.has-instance.js"; +import "core-js/modules/es6.function.name.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.math.acosh.js"; +import "core-js/modules/es6.math.asinh.js"; +import "core-js/modules/es6.math.atanh.js"; +import "core-js/modules/es6.math.cbrt.js"; +import "core-js/modules/es6.math.clz32.js"; +import "core-js/modules/es6.math.cosh.js"; +import "core-js/modules/es6.math.expm1.js"; +import "core-js/modules/es6.math.fround.js"; +import "core-js/modules/es6.math.hypot.js"; +import "core-js/modules/es6.math.imul.js"; +import "core-js/modules/es6.math.log1p.js"; +import "core-js/modules/es6.math.log10.js"; +import "core-js/modules/es6.math.log2.js"; +import "core-js/modules/es6.math.sign.js"; +import "core-js/modules/es6.math.sinh.js"; +import "core-js/modules/es6.math.tanh.js"; +import "core-js/modules/es6.math.trunc.js"; +import "core-js/modules/es6.number.constructor.js"; +import "core-js/modules/es6.number.epsilon.js"; +import "core-js/modules/es6.number.is-finite.js"; +import "core-js/modules/es6.number.is-integer.js"; +import "core-js/modules/es6.number.is-nan.js"; +import "core-js/modules/es6.number.is-safe-integer.js"; +import "core-js/modules/es6.number.max-safe-integer.js"; +import "core-js/modules/es6.number.min-safe-integer.js"; +import "core-js/modules/es6.number.parse-float.js"; +import "core-js/modules/es6.number.parse-int.js"; +import "core-js/modules/es6.object.assign.js"; +import "core-js/modules/es6.object.create.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es6.object.define-property.js"; +import "core-js/modules/es6.object.define-properties.js"; +import "core-js/modules/es7.object.entries.js"; +import "core-js/modules/es6.object.freeze.js"; +import "core-js/modules/es6.object.get-own-property-descriptor.js"; +import "core-js/modules/es7.object.get-own-property-descriptors.js"; +import "core-js/modules/es6.object.get-own-property-names.js"; +import "core-js/modules/es6.object.get-prototype-of.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.prevent-extensions.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.object.is.js"; +import "core-js/modules/es6.object.is-frozen.js"; +import "core-js/modules/es6.object.is-sealed.js"; +import "core-js/modules/es6.object.is-extensible.js"; +import "core-js/modules/es6.object.keys.js"; +import "core-js/modules/es6.object.seal.js"; +import "core-js/modules/es6.object.set-prototype-of.js"; +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.reflect.apply.js"; +import "core-js/modules/es6.reflect.construct.js"; +import "core-js/modules/es6.reflect.define-property.js"; +import "core-js/modules/es6.reflect.delete-property.js"; +import "core-js/modules/es6.reflect.get.js"; +import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es6.reflect.get-prototype-of.js"; +import "core-js/modules/es6.reflect.has.js"; +import "core-js/modules/es6.reflect.is-extensible.js"; +import "core-js/modules/es6.reflect.own-keys.js"; +import "core-js/modules/es6.reflect.prevent-extensions.js"; +import "core-js/modules/es6.reflect.set.js"; +import "core-js/modules/es6.reflect.set-prototype-of.js"; +import "core-js/modules/es6.regexp.constructor.js"; +import "core-js/modules/es6.regexp.flags.js"; +import "core-js/modules/es6.regexp.match.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.to-string.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es6.string.anchor.js"; +import "core-js/modules/es6.string.big.js"; +import "core-js/modules/es6.string.blink.js"; +import "core-js/modules/es6.string.bold.js"; +import "core-js/modules/es6.string.code-point-at.js"; +import "core-js/modules/es6.string.ends-with.js"; +import "core-js/modules/es6.string.fixed.js"; +import "core-js/modules/es6.string.fontcolor.js"; +import "core-js/modules/es6.string.fontsize.js"; +import "core-js/modules/es6.string.from-code-point.js"; +import "core-js/modules/es6.string.includes.js"; +import "core-js/modules/es6.string.italics.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.string.link.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es6.string.raw.js"; +import "core-js/modules/es6.string.repeat.js"; +import "core-js/modules/es6.string.small.js"; +import "core-js/modules/es6.string.starts-with.js"; +import "core-js/modules/es6.string.strike.js"; +import "core-js/modules/es6.string.sub.js"; +import "core-js/modules/es6.string.sup.js"; +import "core-js/modules/es6.string.trim.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/es6.typed.array-buffer.js"; +import "core-js/modules/es6.typed.data-view.js"; +import "core-js/modules/es6.typed.int8-array.js"; +import "core-js/modules/es6.typed.uint8-array.js"; +import "core-js/modules/es6.typed.uint8-clamped-array.js"; +import "core-js/modules/es6.typed.int16-array.js"; +import "core-js/modules/es6.typed.uint16-array.js"; +import "core-js/modules/es6.typed.int32-array.js"; +import "core-js/modules/es6.typed.uint32-array.js"; +import "core-js/modules/es6.typed.float32-array.js"; +import "core-js/modules/es6.typed.float64-array.js"; +import "core-js/modules/es6.weak-map.js"; +import "core-js/modules/es6.weak-set.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/options.json new file mode 100644 index 0000000000..3999b22731 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ], + "BABEL_8_BREAKING": true +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/output.mjs new file mode 100644 index 0000000000..aca09a3207 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-all/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/input.mjs new file mode 100644 index 0000000000..9aaeea95a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/input.mjs @@ -0,0 +1,2 @@ +import "@babel/polyfill"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/options.json new file mode 100644 index 0000000000..e6be8cd4b1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 48 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/output.mjs new file mode 100644 index 0000000000..9620471bc2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-48/output.mjs @@ -0,0 +1,65 @@ +import "core-js/modules/es6.array.filter.js"; +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.map.js"; +import "core-js/modules/es6.array.slice.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es6.array.species.js"; +import "core-js/modules/es6.function.has-instance.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.object.assign.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.entries.js"; +import "core-js/modules/es7.object.get-own-property-descriptors.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.reflect.apply.js"; +import "core-js/modules/es6.reflect.construct.js"; +import "core-js/modules/es6.reflect.define-property.js"; +import "core-js/modules/es6.reflect.delete-property.js"; +import "core-js/modules/es6.reflect.get.js"; +import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es6.reflect.get-prototype-of.js"; +import "core-js/modules/es6.reflect.has.js"; +import "core-js/modules/es6.reflect.is-extensible.js"; +import "core-js/modules/es6.reflect.own-keys.js"; +import "core-js/modules/es6.reflect.prevent-extensions.js"; +import "core-js/modules/es6.reflect.set.js"; +import "core-js/modules/es6.reflect.set-prototype-of.js"; +import "core-js/modules/es6.regexp.constructor.js"; +import "core-js/modules/es6.regexp.flags.js"; +import "core-js/modules/es6.regexp.match.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.to-string.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/es6.typed.array-buffer.js"; +import "core-js/modules/es6.typed.int8-array.js"; +import "core-js/modules/es6.typed.uint8-array.js"; +import "core-js/modules/es6.typed.uint8-clamped-array.js"; +import "core-js/modules/es6.typed.int16-array.js"; +import "core-js/modules/es6.typed.uint16-array.js"; +import "core-js/modules/es6.typed.int32-array.js"; +import "core-js/modules/es6.typed.uint32-array.js"; +import "core-js/modules/es6.typed.float32-array.js"; +import "core-js/modules/es6.typed.float64-array.js"; +import "core-js/modules/es6.weak-map.js"; +import "core-js/modules/es6.weak-set.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; +Math.pow(1, 2); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/input.mjs new file mode 100644 index 0000000000..9aaeea95a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/input.mjs @@ -0,0 +1,2 @@ +import "@babel/polyfill"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/options.json new file mode 100644 index 0000000000..29a64d797c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 49 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/output.mjs new file mode 100644 index 0000000000..518a983597 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-49/output.mjs @@ -0,0 +1,50 @@ +import "core-js/modules/es6.array.filter.js"; +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.map.js"; +import "core-js/modules/es6.array.slice.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es6.array.species.js"; +import "core-js/modules/es6.function.has-instance.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.entries.js"; +import "core-js/modules/es7.object.get-own-property-descriptors.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.regexp.constructor.js"; +import "core-js/modules/es6.regexp.match.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.to-string.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/es6.typed.array-buffer.js"; +import "core-js/modules/es6.typed.int8-array.js"; +import "core-js/modules/es6.typed.uint8-array.js"; +import "core-js/modules/es6.typed.uint8-clamped-array.js"; +import "core-js/modules/es6.typed.int16-array.js"; +import "core-js/modules/es6.typed.uint16-array.js"; +import "core-js/modules/es6.typed.int32-array.js"; +import "core-js/modules/es6.typed.uint32-array.js"; +import "core-js/modules/es6.typed.float32-array.js"; +import "core-js/modules/es6.typed.float64-array.js"; +import "core-js/modules/es6.weak-map.js"; +import "core-js/modules/es6.weak-set.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; +Math.pow(1, 2); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/input.mjs new file mode 100644 index 0000000000..b475c7ae52 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/input.mjs @@ -0,0 +1,16 @@ +import "@babel/polyfill"; + +const foo = { + a: true, +}; + +const bar = { + ...foo, + b: false, +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/options.json new file mode 100644 index 0000000000..5a0151ae5b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "66" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/output.mjs new file mode 100644 index 0000000000..1529357732 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-66/output.mjs @@ -0,0 +1,16 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +const foo = { + a: true +}; +const bar = { ...foo, + b: false +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/input.mjs new file mode 100644 index 0000000000..b475c7ae52 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/input.mjs @@ -0,0 +1,16 @@ +import "@babel/polyfill"; + +const foo = { + a: true, +}; + +const bar = { + ...foo, + b: false, +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/options.json new file mode 100644 index 0000000000..344aa0ae65 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/output.mjs new file mode 100644 index 0000000000..c85d4fceeb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chrome-71/output.mjs @@ -0,0 +1,15 @@ +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +const foo = { + a: true +}; +const bar = { ...foo, + b: false +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/input.mjs new file mode 100644 index 0000000000..9aaeea95a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/input.mjs @@ -0,0 +1,2 @@ +import "@babel/polyfill"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/options.json new file mode 100644 index 0000000000..167d33395b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": "chromeandroid 59" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/output.mjs new file mode 100644 index 0000000000..0509780f85 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-chromeandroid/output.mjs @@ -0,0 +1,15 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/input.mjs new file mode 100644 index 0000000000..640bc11864 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/input.mjs @@ -0,0 +1 @@ +require("core-js"); \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/options.json new file mode 100644 index 0000000000..19b78ca457 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/output.mjs new file mode 100644 index 0000000000..c6964cbc9f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main-require/output.mjs @@ -0,0 +1,17 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/input.mjs new file mode 100644 index 0000000000..bd6332b8ba --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/input.mjs @@ -0,0 +1 @@ +import "core-js"; \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/options.json new file mode 100644 index 0000000000..19b78ca457 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/output.mjs new file mode 100644 index 0000000000..c6964cbc9f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-core-js-main/output.mjs @@ -0,0 +1,17 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/input.mjs new file mode 100644 index 0000000000..1547651453 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/input.mjs @@ -0,0 +1,3 @@ +import "@babel/polyfill"; + +a ** b; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/options.json new file mode 100644 index 0000000000..fe07d418a7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "electron": "1.4" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/output.mjs new file mode 100644 index 0000000000..9e77d134d1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-electron/output.mjs @@ -0,0 +1,18 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +a ** b; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/options.json new file mode 100644 index 0000000000..280e9827e6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "ie": 11 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/output.mjs new file mode 100644 index 0000000000..6864d65c83 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-11/output.mjs @@ -0,0 +1,130 @@ +import "core-js/modules/es6.array.copy-within.js"; +import "core-js/modules/es6.array.fill.js"; +import "core-js/modules/es6.array.filter.js"; +import "core-js/modules/es6.array.find.js"; +import "core-js/modules/es6.array.find-index.js"; +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es7.array.includes.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.map.js"; +import "core-js/modules/es6.array.of.js"; +import "core-js/modules/es6.array.slice.js"; +import "core-js/modules/es6.array.species.js"; +import "core-js/modules/es6.date.to-primitive.js"; +import "core-js/modules/es6.function.has-instance.js"; +import "core-js/modules/es6.function.name.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.math.acosh.js"; +import "core-js/modules/es6.math.asinh.js"; +import "core-js/modules/es6.math.atanh.js"; +import "core-js/modules/es6.math.cbrt.js"; +import "core-js/modules/es6.math.clz32.js"; +import "core-js/modules/es6.math.cosh.js"; +import "core-js/modules/es6.math.expm1.js"; +import "core-js/modules/es6.math.fround.js"; +import "core-js/modules/es6.math.hypot.js"; +import "core-js/modules/es6.math.imul.js"; +import "core-js/modules/es6.math.log1p.js"; +import "core-js/modules/es6.math.log10.js"; +import "core-js/modules/es6.math.log2.js"; +import "core-js/modules/es6.math.sign.js"; +import "core-js/modules/es6.math.sinh.js"; +import "core-js/modules/es6.math.tanh.js"; +import "core-js/modules/es6.math.trunc.js"; +import "core-js/modules/es6.number.constructor.js"; +import "core-js/modules/es6.number.epsilon.js"; +import "core-js/modules/es6.number.is-finite.js"; +import "core-js/modules/es6.number.is-integer.js"; +import "core-js/modules/es6.number.is-nan.js"; +import "core-js/modules/es6.number.is-safe-integer.js"; +import "core-js/modules/es6.number.max-safe-integer.js"; +import "core-js/modules/es6.number.min-safe-integer.js"; +import "core-js/modules/es6.number.parse-float.js"; +import "core-js/modules/es6.number.parse-int.js"; +import "core-js/modules/es6.object.assign.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.entries.js"; +import "core-js/modules/es6.object.freeze.js"; +import "core-js/modules/es6.object.get-own-property-descriptor.js"; +import "core-js/modules/es7.object.get-own-property-descriptors.js"; +import "core-js/modules/es6.object.get-own-property-names.js"; +import "core-js/modules/es6.object.get-prototype-of.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.prevent-extensions.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.object.is.js"; +import "core-js/modules/es6.object.is-frozen.js"; +import "core-js/modules/es6.object.is-sealed.js"; +import "core-js/modules/es6.object.is-extensible.js"; +import "core-js/modules/es6.object.keys.js"; +import "core-js/modules/es6.object.seal.js"; +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.reflect.apply.js"; +import "core-js/modules/es6.reflect.construct.js"; +import "core-js/modules/es6.reflect.define-property.js"; +import "core-js/modules/es6.reflect.delete-property.js"; +import "core-js/modules/es6.reflect.get.js"; +import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es6.reflect.get-prototype-of.js"; +import "core-js/modules/es6.reflect.has.js"; +import "core-js/modules/es6.reflect.is-extensible.js"; +import "core-js/modules/es6.reflect.own-keys.js"; +import "core-js/modules/es6.reflect.prevent-extensions.js"; +import "core-js/modules/es6.reflect.set.js"; +import "core-js/modules/es6.reflect.set-prototype-of.js"; +import "core-js/modules/es6.regexp.constructor.js"; +import "core-js/modules/es6.regexp.flags.js"; +import "core-js/modules/es6.regexp.match.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.to-string.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es6.string.anchor.js"; +import "core-js/modules/es6.string.big.js"; +import "core-js/modules/es6.string.blink.js"; +import "core-js/modules/es6.string.bold.js"; +import "core-js/modules/es6.string.code-point-at.js"; +import "core-js/modules/es6.string.ends-with.js"; +import "core-js/modules/es6.string.fixed.js"; +import "core-js/modules/es6.string.fontcolor.js"; +import "core-js/modules/es6.string.fontsize.js"; +import "core-js/modules/es6.string.from-code-point.js"; +import "core-js/modules/es6.string.includes.js"; +import "core-js/modules/es6.string.italics.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.string.link.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es6.string.raw.js"; +import "core-js/modules/es6.string.repeat.js"; +import "core-js/modules/es6.string.small.js"; +import "core-js/modules/es6.string.starts-with.js"; +import "core-js/modules/es6.string.strike.js"; +import "core-js/modules/es6.string.sub.js"; +import "core-js/modules/es6.string.sup.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/es6.typed.array-buffer.js"; +import "core-js/modules/es6.typed.int8-array.js"; +import "core-js/modules/es6.typed.uint8-array.js"; +import "core-js/modules/es6.typed.uint8-clamped-array.js"; +import "core-js/modules/es6.typed.int16-array.js"; +import "core-js/modules/es6.typed.uint16-array.js"; +import "core-js/modules/es6.typed.int32-array.js"; +import "core-js/modules/es6.typed.uint32-array.js"; +import "core-js/modules/es6.typed.float32-array.js"; +import "core-js/modules/es6.typed.float64-array.js"; +import "core-js/modules/es6.weak-map.js"; +import "core-js/modules/es6.weak-set.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/options.json new file mode 100644 index 0000000000..a955fd914b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "ie": 9 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/output.mjs new file mode 100644 index 0000000000..d34a9e28de --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-ie-9/output.mjs @@ -0,0 +1,133 @@ +import "core-js/modules/es6.array.copy-within.js"; +import "core-js/modules/es6.array.fill.js"; +import "core-js/modules/es6.array.filter.js"; +import "core-js/modules/es6.array.find.js"; +import "core-js/modules/es6.array.find-index.js"; +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es7.array.includes.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.map.js"; +import "core-js/modules/es6.array.of.js"; +import "core-js/modules/es6.array.slice.js"; +import "core-js/modules/es6.array.species.js"; +import "core-js/modules/es6.date.to-primitive.js"; +import "core-js/modules/es6.date.to-string.js"; +import "core-js/modules/es6.function.has-instance.js"; +import "core-js/modules/es6.function.name.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.math.acosh.js"; +import "core-js/modules/es6.math.asinh.js"; +import "core-js/modules/es6.math.atanh.js"; +import "core-js/modules/es6.math.cbrt.js"; +import "core-js/modules/es6.math.clz32.js"; +import "core-js/modules/es6.math.cosh.js"; +import "core-js/modules/es6.math.expm1.js"; +import "core-js/modules/es6.math.fround.js"; +import "core-js/modules/es6.math.hypot.js"; +import "core-js/modules/es6.math.imul.js"; +import "core-js/modules/es6.math.log1p.js"; +import "core-js/modules/es6.math.log10.js"; +import "core-js/modules/es6.math.log2.js"; +import "core-js/modules/es6.math.sign.js"; +import "core-js/modules/es6.math.sinh.js"; +import "core-js/modules/es6.math.tanh.js"; +import "core-js/modules/es6.math.trunc.js"; +import "core-js/modules/es6.number.constructor.js"; +import "core-js/modules/es6.number.epsilon.js"; +import "core-js/modules/es6.number.is-finite.js"; +import "core-js/modules/es6.number.is-integer.js"; +import "core-js/modules/es6.number.is-nan.js"; +import "core-js/modules/es6.number.is-safe-integer.js"; +import "core-js/modules/es6.number.max-safe-integer.js"; +import "core-js/modules/es6.number.min-safe-integer.js"; +import "core-js/modules/es6.number.parse-float.js"; +import "core-js/modules/es6.number.parse-int.js"; +import "core-js/modules/es6.object.assign.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.entries.js"; +import "core-js/modules/es6.object.freeze.js"; +import "core-js/modules/es6.object.get-own-property-descriptor.js"; +import "core-js/modules/es7.object.get-own-property-descriptors.js"; +import "core-js/modules/es6.object.get-own-property-names.js"; +import "core-js/modules/es6.object.get-prototype-of.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.prevent-extensions.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.object.is.js"; +import "core-js/modules/es6.object.is-frozen.js"; +import "core-js/modules/es6.object.is-sealed.js"; +import "core-js/modules/es6.object.is-extensible.js"; +import "core-js/modules/es6.object.keys.js"; +import "core-js/modules/es6.object.seal.js"; +import "core-js/modules/es6.object.set-prototype-of.js"; +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.reflect.apply.js"; +import "core-js/modules/es6.reflect.construct.js"; +import "core-js/modules/es6.reflect.define-property.js"; +import "core-js/modules/es6.reflect.delete-property.js"; +import "core-js/modules/es6.reflect.get.js"; +import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es6.reflect.get-prototype-of.js"; +import "core-js/modules/es6.reflect.has.js"; +import "core-js/modules/es6.reflect.is-extensible.js"; +import "core-js/modules/es6.reflect.own-keys.js"; +import "core-js/modules/es6.reflect.prevent-extensions.js"; +import "core-js/modules/es6.reflect.set.js"; +import "core-js/modules/es6.reflect.set-prototype-of.js"; +import "core-js/modules/es6.regexp.constructor.js"; +import "core-js/modules/es6.regexp.flags.js"; +import "core-js/modules/es6.regexp.match.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.to-string.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es6.string.anchor.js"; +import "core-js/modules/es6.string.big.js"; +import "core-js/modules/es6.string.blink.js"; +import "core-js/modules/es6.string.bold.js"; +import "core-js/modules/es6.string.code-point-at.js"; +import "core-js/modules/es6.string.ends-with.js"; +import "core-js/modules/es6.string.fixed.js"; +import "core-js/modules/es6.string.fontcolor.js"; +import "core-js/modules/es6.string.fontsize.js"; +import "core-js/modules/es6.string.from-code-point.js"; +import "core-js/modules/es6.string.includes.js"; +import "core-js/modules/es6.string.italics.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.string.link.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es6.string.raw.js"; +import "core-js/modules/es6.string.repeat.js"; +import "core-js/modules/es6.string.small.js"; +import "core-js/modules/es6.string.starts-with.js"; +import "core-js/modules/es6.string.strike.js"; +import "core-js/modules/es6.string.sub.js"; +import "core-js/modules/es6.string.sup.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/es6.typed.array-buffer.js"; +import "core-js/modules/es6.typed.data-view.js"; +import "core-js/modules/es6.typed.int8-array.js"; +import "core-js/modules/es6.typed.uint8-array.js"; +import "core-js/modules/es6.typed.uint8-clamped-array.js"; +import "core-js/modules/es6.typed.int16-array.js"; +import "core-js/modules/es6.typed.uint16-array.js"; +import "core-js/modules/es6.typed.int32-array.js"; +import "core-js/modules/es6.typed.uint32-array.js"; +import "core-js/modules/es6.typed.float32-array.js"; +import "core-js/modules/es6.typed.float64-array.js"; +import "core-js/modules/es6.weak-map.js"; +import "core-js/modules/es6.weak-set.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/input.mjs new file mode 100644 index 0000000000..9aaeea95a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/input.mjs @@ -0,0 +1,2 @@ +import "@babel/polyfill"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/options.json new file mode 100644 index 0000000000..19b78ca457 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/output.mjs new file mode 100644 index 0000000000..06c96e4527 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-import/output.mjs @@ -0,0 +1,18 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/input.mjs new file mode 100644 index 0000000000..cce2c112e0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/input.mjs @@ -0,0 +1,2 @@ +import "@babel/polyfill"; + diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/options.json new file mode 100644 index 0000000000..0bc0d53b84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "10.13" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/output.mjs new file mode 100644 index 0000000000..492a3a5dc4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-10.13/output.mjs @@ -0,0 +1 @@ +import "core-js/modules/es7.array.flat-map.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/input.mjs new file mode 100644 index 0000000000..cce2c112e0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/input.mjs @@ -0,0 +1,2 @@ +import "@babel/polyfill"; + diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/options.json new file mode 100644 index 0000000000..c8b34662cf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "11" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/output.mjs new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-11/output.mjs @@ -0,0 +1 @@ + diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/options.json new file mode 100644 index 0000000000..56fd28fa3d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/options.json @@ -0,0 +1,17 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55", + "node": "7.6" + }, + "modules": false, + "useBuiltIns": "entry", + "forceAllTransforms": true, + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/output.mjs new file mode 100644 index 0000000000..8446be5d13 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node-web/output.mjs @@ -0,0 +1,18 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/options.json new file mode 100644 index 0000000000..fc9b166ab9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "7.6" + }, + "modules": false, + "useBuiltIns": "entry", + "forceAllTransforms": true, + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/output.mjs new file mode 100644 index 0000000000..da0c5ad325 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-node/output.mjs @@ -0,0 +1,15 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "regenerator-runtime/runtime.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/input.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/input.js new file mode 100644 index 0000000000..6bbea2630d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/input.js @@ -0,0 +1,3 @@ +require("@babel/polyfill"); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/options.json new file mode 100644 index 0000000000..b1dae07978 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/output.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/output.js new file mode 100644 index 0000000000..d05cccaa1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-require/output.js @@ -0,0 +1,35 @@ +require("core-js/modules/es7.array.flat-map.js"); + +require("core-js/modules/es6.array.iterator.js"); + +require("core-js/modules/es6.array.sort.js"); + +require("core-js/modules/es7.object.define-getter.js"); + +require("core-js/modules/es7.object.define-setter.js"); + +require("core-js/modules/es7.object.lookup-getter.js"); + +require("core-js/modules/es7.object.lookup-setter.js"); + +require("core-js/modules/es6.object.to-string.js"); + +require("core-js/modules/es7.promise.finally.js"); + +require("core-js/modules/es7.symbol.async-iterator.js"); + +require("core-js/modules/es7.string.pad-start.js"); + +require("core-js/modules/es7.string.pad-end.js"); + +require("core-js/modules/es7.string.trim-left.js"); + +require("core-js/modules/es7.string.trim-right.js"); + +require("core-js/modules/web.timers.js"); + +require("core-js/modules/web.immediate.js"); + +require("core-js/modules/web.dom.iterable.js"); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/input.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/input.js new file mode 100644 index 0000000000..139b7c19f8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/input.js @@ -0,0 +1,8 @@ +require("@babel/polyfill"); + +let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; +let n = { x, y, ...z }; +async function* agf() { + await 1; + yield 2; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/options.json new file mode 100644 index 0000000000..6edc0aaa56 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/options.json @@ -0,0 +1,14 @@ +{ + "externalHelpers": true, + "presets": [ + [ + "../../../../lib", + { + "shippedProposals": true, + "targets": { "browsers": "ie 6" }, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/output.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/output.js new file mode 100644 index 0000000000..57a5c7776a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/entry-shippedProposals/output.js @@ -0,0 +1,340 @@ +require("core-js/modules/es6.array.copy-within.js"); + +require("core-js/modules/es6.array.every.js"); + +require("core-js/modules/es6.array.fill.js"); + +require("core-js/modules/es6.array.filter.js"); + +require("core-js/modules/es6.array.find.js"); + +require("core-js/modules/es6.array.find-index.js"); + +require("core-js/modules/es7.array.flat-map.js"); + +require("core-js/modules/es6.array.for-each.js"); + +require("core-js/modules/es6.array.from.js"); + +require("core-js/modules/es7.array.includes.js"); + +require("core-js/modules/es6.array.index-of.js"); + +require("core-js/modules/es6.array.is-array.js"); + +require("core-js/modules/es6.array.iterator.js"); + +require("core-js/modules/es6.array.last-index-of.js"); + +require("core-js/modules/es6.array.map.js"); + +require("core-js/modules/es6.array.of.js"); + +require("core-js/modules/es6.array.reduce.js"); + +require("core-js/modules/es6.array.reduce-right.js"); + +require("core-js/modules/es6.array.slice.js"); + +require("core-js/modules/es6.array.some.js"); + +require("core-js/modules/es6.array.sort.js"); + +require("core-js/modules/es6.array.species.js"); + +require("core-js/modules/es6.date.now.js"); + +require("core-js/modules/es6.date.to-iso-string.js"); + +require("core-js/modules/es6.date.to-json.js"); + +require("core-js/modules/es6.date.to-primitive.js"); + +require("core-js/modules/es6.date.to-string.js"); + +require("core-js/modules/es6.function.bind.js"); + +require("core-js/modules/es6.function.has-instance.js"); + +require("core-js/modules/es6.function.name.js"); + +require("core-js/modules/es6.map.js"); + +require("core-js/modules/es6.math.acosh.js"); + +require("core-js/modules/es6.math.asinh.js"); + +require("core-js/modules/es6.math.atanh.js"); + +require("core-js/modules/es6.math.cbrt.js"); + +require("core-js/modules/es6.math.clz32.js"); + +require("core-js/modules/es6.math.cosh.js"); + +require("core-js/modules/es6.math.expm1.js"); + +require("core-js/modules/es6.math.fround.js"); + +require("core-js/modules/es6.math.hypot.js"); + +require("core-js/modules/es6.math.imul.js"); + +require("core-js/modules/es6.math.log1p.js"); + +require("core-js/modules/es6.math.log10.js"); + +require("core-js/modules/es6.math.log2.js"); + +require("core-js/modules/es6.math.sign.js"); + +require("core-js/modules/es6.math.sinh.js"); + +require("core-js/modules/es6.math.tanh.js"); + +require("core-js/modules/es6.math.trunc.js"); + +require("core-js/modules/es6.number.constructor.js"); + +require("core-js/modules/es6.number.epsilon.js"); + +require("core-js/modules/es6.number.is-finite.js"); + +require("core-js/modules/es6.number.is-integer.js"); + +require("core-js/modules/es6.number.is-nan.js"); + +require("core-js/modules/es6.number.is-safe-integer.js"); + +require("core-js/modules/es6.number.max-safe-integer.js"); + +require("core-js/modules/es6.number.min-safe-integer.js"); + +require("core-js/modules/es6.number.parse-float.js"); + +require("core-js/modules/es6.number.parse-int.js"); + +require("core-js/modules/es6.object.assign.js"); + +require("core-js/modules/es6.object.create.js"); + +require("core-js/modules/es7.object.define-getter.js"); + +require("core-js/modules/es7.object.define-setter.js"); + +require("core-js/modules/es6.object.define-property.js"); + +require("core-js/modules/es6.object.define-properties.js"); + +require("core-js/modules/es7.object.entries.js"); + +require("core-js/modules/es6.object.freeze.js"); + +require("core-js/modules/es6.object.get-own-property-descriptor.js"); + +require("core-js/modules/es7.object.get-own-property-descriptors.js"); + +require("core-js/modules/es6.object.get-own-property-names.js"); + +require("core-js/modules/es6.object.get-prototype-of.js"); + +require("core-js/modules/es7.object.lookup-getter.js"); + +require("core-js/modules/es7.object.lookup-setter.js"); + +require("core-js/modules/es6.object.prevent-extensions.js"); + +require("core-js/modules/es6.object.to-string.js"); + +require("core-js/modules/es6.object.is.js"); + +require("core-js/modules/es6.object.is-frozen.js"); + +require("core-js/modules/es6.object.is-sealed.js"); + +require("core-js/modules/es6.object.is-extensible.js"); + +require("core-js/modules/es6.object.keys.js"); + +require("core-js/modules/es6.object.seal.js"); + +require("core-js/modules/es6.object.set-prototype-of.js"); + +require("core-js/modules/es7.object.values.js"); + +require("core-js/modules/es6.promise.js"); + +require("core-js/modules/es7.promise.finally.js"); + +require("core-js/modules/es6.reflect.apply.js"); + +require("core-js/modules/es6.reflect.construct.js"); + +require("core-js/modules/es6.reflect.define-property.js"); + +require("core-js/modules/es6.reflect.delete-property.js"); + +require("core-js/modules/es6.reflect.get.js"); + +require("core-js/modules/es6.reflect.get-own-property-descriptor.js"); + +require("core-js/modules/es6.reflect.get-prototype-of.js"); + +require("core-js/modules/es6.reflect.has.js"); + +require("core-js/modules/es6.reflect.is-extensible.js"); + +require("core-js/modules/es6.reflect.own-keys.js"); + +require("core-js/modules/es6.reflect.prevent-extensions.js"); + +require("core-js/modules/es6.reflect.set.js"); + +require("core-js/modules/es6.reflect.set-prototype-of.js"); + +require("core-js/modules/es6.regexp.constructor.js"); + +require("core-js/modules/es6.regexp.flags.js"); + +require("core-js/modules/es6.regexp.match.js"); + +require("core-js/modules/es6.regexp.replace.js"); + +require("core-js/modules/es6.regexp.split.js"); + +require("core-js/modules/es6.regexp.search.js"); + +require("core-js/modules/es6.regexp.to-string.js"); + +require("core-js/modules/es6.set.js"); + +require("core-js/modules/es6.symbol.js"); + +require("core-js/modules/es7.symbol.async-iterator.js"); + +require("core-js/modules/es6.string.anchor.js"); + +require("core-js/modules/es6.string.big.js"); + +require("core-js/modules/es6.string.blink.js"); + +require("core-js/modules/es6.string.bold.js"); + +require("core-js/modules/es6.string.code-point-at.js"); + +require("core-js/modules/es6.string.ends-with.js"); + +require("core-js/modules/es6.string.fixed.js"); + +require("core-js/modules/es6.string.fontcolor.js"); + +require("core-js/modules/es6.string.fontsize.js"); + +require("core-js/modules/es6.string.from-code-point.js"); + +require("core-js/modules/es6.string.includes.js"); + +require("core-js/modules/es6.string.italics.js"); + +require("core-js/modules/es6.string.iterator.js"); + +require("core-js/modules/es6.string.link.js"); + +require("core-js/modules/es7.string.pad-start.js"); + +require("core-js/modules/es7.string.pad-end.js"); + +require("core-js/modules/es6.string.raw.js"); + +require("core-js/modules/es6.string.repeat.js"); + +require("core-js/modules/es6.string.small.js"); + +require("core-js/modules/es6.string.starts-with.js"); + +require("core-js/modules/es6.string.strike.js"); + +require("core-js/modules/es6.string.sub.js"); + +require("core-js/modules/es6.string.sup.js"); + +require("core-js/modules/es6.string.trim.js"); + +require("core-js/modules/es7.string.trim-left.js"); + +require("core-js/modules/es7.string.trim-right.js"); + +require("core-js/modules/es6.typed.array-buffer.js"); + +require("core-js/modules/es6.typed.data-view.js"); + +require("core-js/modules/es6.typed.int8-array.js"); + +require("core-js/modules/es6.typed.uint8-array.js"); + +require("core-js/modules/es6.typed.uint8-clamped-array.js"); + +require("core-js/modules/es6.typed.int16-array.js"); + +require("core-js/modules/es6.typed.uint16-array.js"); + +require("core-js/modules/es6.typed.int32-array.js"); + +require("core-js/modules/es6.typed.uint32-array.js"); + +require("core-js/modules/es6.typed.float32-array.js"); + +require("core-js/modules/es6.typed.float64-array.js"); + +require("core-js/modules/es6.weak-map.js"); + +require("core-js/modules/es6.weak-set.js"); + +require("core-js/modules/web.timers.js"); + +require("core-js/modules/web.immediate.js"); + +require("core-js/modules/web.dom.iterable.js"); + +require("regenerator-runtime/runtime.js"); + +var _x$y$a$b = { + x: 1, + y: 2, + a: 3, + b: 4 +}, + x = _x$y$a$b.x, + y = _x$y$a$b.y, + z = babelHelpers.objectWithoutProperties(_x$y$a$b, ["x", "y"]); +var n = babelHelpers.objectSpread2({ + x: x, + y: y +}, z); + +function agf() { + return _agf.apply(this, arguments); +} + +function _agf() { + _agf = babelHelpers.wrapAsyncGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return babelHelpers.awaitAsyncGenerator(1); + + case 2: + _context.next = 4; + return 2; + + case 4: + case "end": + return _context.stop(); + } + } + }, _callee); + })); + return _agf.apply(this, arguments); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/options.json new file mode 100644 index 0000000000..f3f1b4733a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/options.json @@ -0,0 +1,21 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 63 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2, + "exclude": [ + "es7.array.flat-map", + "web.timers", + "web.immediate", + "web.dom.iterable" + ] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/output.mjs new file mode 100644 index 0000000000..185644e646 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-built-ins/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/input.mjs new file mode 100644 index 0000000000..8be10283d8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/input.mjs @@ -0,0 +1,7 @@ +import "@babel/polyfill"; + +async function a() { + await 1; +} + +(() => {}) diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/options.json new file mode 100644 index 0000000000..73ac204862 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/options.json @@ -0,0 +1,21 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2, + "exclude": [ + "transform-async-to-generator", + "transform-regenerator", + "es6.string.repeat" + ], + "include": ["transform-arrow-functions", "es6.map"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/output.mjs new file mode 100644 index 0000000000..c64ed2f198 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-include/output.mjs @@ -0,0 +1,24 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; + +async function a() { + await 1; +} + +(function () {}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/options.json new file mode 100644 index 0000000000..376e039037 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 2, + "exclude": ["transform-regenerator"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/output.mjs new file mode 100644 index 0000000000..8d85179fe4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude-regenerator/output.mjs @@ -0,0 +1,149 @@ +import "core-js/modules/es6.array.copy-within.js"; +import "core-js/modules/es6.array.every.js"; +import "core-js/modules/es6.array.fill.js"; +import "core-js/modules/es6.array.filter.js"; +import "core-js/modules/es6.array.find.js"; +import "core-js/modules/es6.array.find-index.js"; +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.for-each.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es7.array.includes.js"; +import "core-js/modules/es6.array.index-of.js"; +import "core-js/modules/es6.array.is-array.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.last-index-of.js"; +import "core-js/modules/es6.array.map.js"; +import "core-js/modules/es6.array.of.js"; +import "core-js/modules/es6.array.reduce.js"; +import "core-js/modules/es6.array.reduce-right.js"; +import "core-js/modules/es6.array.slice.js"; +import "core-js/modules/es6.array.some.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es6.array.species.js"; +import "core-js/modules/es6.date.now.js"; +import "core-js/modules/es6.date.to-iso-string.js"; +import "core-js/modules/es6.date.to-json.js"; +import "core-js/modules/es6.date.to-primitive.js"; +import "core-js/modules/es6.date.to-string.js"; +import "core-js/modules/es6.function.bind.js"; +import "core-js/modules/es6.function.has-instance.js"; +import "core-js/modules/es6.function.name.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.math.acosh.js"; +import "core-js/modules/es6.math.asinh.js"; +import "core-js/modules/es6.math.atanh.js"; +import "core-js/modules/es6.math.cbrt.js"; +import "core-js/modules/es6.math.clz32.js"; +import "core-js/modules/es6.math.cosh.js"; +import "core-js/modules/es6.math.expm1.js"; +import "core-js/modules/es6.math.fround.js"; +import "core-js/modules/es6.math.hypot.js"; +import "core-js/modules/es6.math.imul.js"; +import "core-js/modules/es6.math.log1p.js"; +import "core-js/modules/es6.math.log10.js"; +import "core-js/modules/es6.math.log2.js"; +import "core-js/modules/es6.math.sign.js"; +import "core-js/modules/es6.math.sinh.js"; +import "core-js/modules/es6.math.tanh.js"; +import "core-js/modules/es6.math.trunc.js"; +import "core-js/modules/es6.number.constructor.js"; +import "core-js/modules/es6.number.epsilon.js"; +import "core-js/modules/es6.number.is-finite.js"; +import "core-js/modules/es6.number.is-integer.js"; +import "core-js/modules/es6.number.is-nan.js"; +import "core-js/modules/es6.number.is-safe-integer.js"; +import "core-js/modules/es6.number.max-safe-integer.js"; +import "core-js/modules/es6.number.min-safe-integer.js"; +import "core-js/modules/es6.number.parse-float.js"; +import "core-js/modules/es6.number.parse-int.js"; +import "core-js/modules/es6.object.assign.js"; +import "core-js/modules/es6.object.create.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es6.object.define-property.js"; +import "core-js/modules/es6.object.define-properties.js"; +import "core-js/modules/es7.object.entries.js"; +import "core-js/modules/es6.object.freeze.js"; +import "core-js/modules/es6.object.get-own-property-descriptor.js"; +import "core-js/modules/es7.object.get-own-property-descriptors.js"; +import "core-js/modules/es6.object.get-own-property-names.js"; +import "core-js/modules/es6.object.get-prototype-of.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.prevent-extensions.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.object.is.js"; +import "core-js/modules/es6.object.is-frozen.js"; +import "core-js/modules/es6.object.is-sealed.js"; +import "core-js/modules/es6.object.is-extensible.js"; +import "core-js/modules/es6.object.keys.js"; +import "core-js/modules/es6.object.seal.js"; +import "core-js/modules/es6.object.set-prototype-of.js"; +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.reflect.apply.js"; +import "core-js/modules/es6.reflect.construct.js"; +import "core-js/modules/es6.reflect.define-property.js"; +import "core-js/modules/es6.reflect.delete-property.js"; +import "core-js/modules/es6.reflect.get.js"; +import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es6.reflect.get-prototype-of.js"; +import "core-js/modules/es6.reflect.has.js"; +import "core-js/modules/es6.reflect.is-extensible.js"; +import "core-js/modules/es6.reflect.own-keys.js"; +import "core-js/modules/es6.reflect.prevent-extensions.js"; +import "core-js/modules/es6.reflect.set.js"; +import "core-js/modules/es6.reflect.set-prototype-of.js"; +import "core-js/modules/es6.regexp.constructor.js"; +import "core-js/modules/es6.regexp.flags.js"; +import "core-js/modules/es6.regexp.match.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.to-string.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es6.string.anchor.js"; +import "core-js/modules/es6.string.big.js"; +import "core-js/modules/es6.string.blink.js"; +import "core-js/modules/es6.string.bold.js"; +import "core-js/modules/es6.string.code-point-at.js"; +import "core-js/modules/es6.string.ends-with.js"; +import "core-js/modules/es6.string.fixed.js"; +import "core-js/modules/es6.string.fontcolor.js"; +import "core-js/modules/es6.string.fontsize.js"; +import "core-js/modules/es6.string.from-code-point.js"; +import "core-js/modules/es6.string.includes.js"; +import "core-js/modules/es6.string.italics.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.string.link.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es6.string.raw.js"; +import "core-js/modules/es6.string.repeat.js"; +import "core-js/modules/es6.string.small.js"; +import "core-js/modules/es6.string.starts-with.js"; +import "core-js/modules/es6.string.strike.js"; +import "core-js/modules/es6.string.sub.js"; +import "core-js/modules/es6.string.sup.js"; +import "core-js/modules/es6.string.trim.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/es6.typed.array-buffer.js"; +import "core-js/modules/es6.typed.data-view.js"; +import "core-js/modules/es6.typed.int8-array.js"; +import "core-js/modules/es6.typed.uint8-array.js"; +import "core-js/modules/es6.typed.uint8-clamped-array.js"; +import "core-js/modules/es6.typed.int16-array.js"; +import "core-js/modules/es6.typed.uint16-array.js"; +import "core-js/modules/es6.typed.int32-array.js"; +import "core-js/modules/es6.typed.uint32-array.js"; +import "core-js/modules/es6.typed.float32-array.js"; +import "core-js/modules/es6.typed.float64-array.js"; +import "core-js/modules/es6.weak-map.js"; +import "core-js/modules/es6.weak-set.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/input.mjs new file mode 100644 index 0000000000..c70b44b5a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/input.mjs @@ -0,0 +1,3 @@ +async function a() { + await 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/options.json new file mode 100644 index 0000000000..0dd4237202 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "usage", + "corejs": 2, + "exclude": ["transform-async-to-generator", "transform-regenerator"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/output.mjs new file mode 100644 index 0000000000..c70b44b5a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/exclude/output.mjs @@ -0,0 +1,3 @@ +async function a() { + await 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/input.mjs new file mode 100644 index 0000000000..76f3af0564 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/input.mjs @@ -0,0 +1,3 @@ +import "@babel/polyfill"; + +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/options.json new file mode 100644 index 0000000000..a16df6bc3e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 2, + "forceAllTransforms": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/output.mjs new file mode 100644 index 0000000000..9f9a658d18 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/force-all-transforms/output.mjs @@ -0,0 +1,19 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; +import "regenerator-runtime/runtime.js"; +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/input.mjs new file mode 100644 index 0000000000..b4ece7b964 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/input.mjs @@ -0,0 +1 @@ +import "@babel/polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/options.json new file mode 100644 index 0000000000..c6fc181232 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "include": ["es6.map", "es6.set"], + "modules": false, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/output.mjs new file mode 100644 index 0000000000..c671f49bf7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/include-built-ins/output.mjs @@ -0,0 +1,19 @@ +import "core-js/modules/es7.array.flat-map.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es6.array.sort.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es7.object.define-getter.js"; +import "core-js/modules/es7.object.define-setter.js"; +import "core-js/modules/es7.object.lookup-getter.js"; +import "core-js/modules/es7.object.lookup-setter.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es7.promise.finally.js"; +import "core-js/modules/es6.set.js"; +import "core-js/modules/es7.symbol.async-iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es7.string.trim-left.js"; +import "core-js/modules/es7.string.trim-right.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.dom.iterable.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/options.json new file mode 100644 index 0000000000..b3ff79dc80 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/options.json @@ -0,0 +1,4 @@ +{ + "externalHelpers": false, + "BABEL_8_BREAKING": false +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/input.mjs new file mode 100644 index 0000000000..fff74225a2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/input.mjs @@ -0,0 +1,18 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression +_arr[Symbol.iterator](); // Symbol.iterator + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { var blah = new WeakMap(); } // shadowed diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/output.mjs new file mode 100644 index 0000000000..34f444b0ab --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-all/output.mjs @@ -0,0 +1,37 @@ +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es6.regexp.match.js"; +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression + +_arr[Symbol.iterator](); // Symbol.iterator +// no import + + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/browserslist b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/browserslist new file mode 100644 index 0000000000..d0ae78fe6a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/browserslist @@ -0,0 +1 @@ +chrome 55 diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/input.mjs new file mode 100644 index 0000000000..f9e8d5a956 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/input.mjs @@ -0,0 +1 @@ +const a = new Map(); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/options.json new file mode 100644 index 0000000000..d7dca0ca75 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "presets": [ + [ + "../../../../lib", + { + "configPath": "../fixtures/preset-options-add-used-built-ins/browserslist-config-ignore", + "modules": false, + "targets": { "esmodules": true }, + "useBuiltIns": "usage", + "corejs": 2, + "debug": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/output.mjs new file mode 100644 index 0000000000..d4236e4c00 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +var a = new Map(); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt new file mode 100644 index 0000000000..7a448e3f77 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt @@ -0,0 +1,57 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "61", + "chrome": "61", + "edge": "16", + "firefox": "60", + "ios": "10.3", + "node": "13.2", + "opera": "48", + "safari": "10.1", + "samsung": "8.2" +} + +Using modules transform: false + +Using plugins: + proposal-numeric-separator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-logical-assignment-operators { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-nullish-coalescing-operator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-optional-chaining { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-json-strings { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-optional-catch-binding { "android":"61", "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + transform-parameters { "edge":"16" } + proposal-async-generator-functions { "android":"61", "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1" } + proposal-object-rest-spread { "edge":"16", "ios":"10.3", "safari":"10.1" } + transform-dotall-regex { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" } + proposal-unicode-property-regex { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + transform-named-capturing-groups-regex { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + transform-async-to-generator { "ios":"10.3", "safari":"10.1" } + transform-template-literals { "ios":"10.3", "safari":"10.1" } + transform-function-name { "edge":"16" } + transform-unicode-regex { "ios":"10.3", "safari":"10.1" } + transform-block-scoping { "ios":"10.3", "safari":"10.1" } + proposal-export-namespace-from { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + syntax-dynamic-import { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } +corejs2: `DEBUG` option + +Using targets: { + "android": "61", + "chrome": "61", + "edge": "16", + "firefox": "60", + "ios": "10.3", + "node": "13.2", + "opera": "48", + "safari": "10.1", + "samsung": "8.2" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/input.mjs] +The corejs2 polyfill added the following polyfills: + es6.array.iterator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + web.dom.iterable { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/input.mjs new file mode 100644 index 0000000000..bf62d9f751 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/input.mjs @@ -0,0 +1 @@ +[a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/options.json new file mode 100644 index 0000000000..e58bc7432b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/output.mjs new file mode 100644 index 0000000000..a4115d2ceb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-assignment/output.mjs @@ -0,0 +1,5 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +[a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/input.mjs new file mode 100644 index 0000000000..cb50832b47 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/input.mjs @@ -0,0 +1,3 @@ +try { + a(); +} catch([b, c]) { } diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/options.json new file mode 100644 index 0000000000..e58bc7432b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/output.mjs new file mode 100644 index 0000000000..a01e5eccef --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-catch/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; + +try { + a(); +} catch ([b, c]) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/input.mjs new file mode 100644 index 0000000000..027d407b5e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/input.mjs @@ -0,0 +1 @@ +for (let [a, b] in c); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/options.json new file mode 100644 index 0000000000..e58bc7432b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/output.mjs new file mode 100644 index 0000000000..af3a372047 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-for-x/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; + +for (var [a, b] in c) { + ; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/input.mjs new file mode 100644 index 0000000000..0b8c72fe4c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/input.mjs @@ -0,0 +1 @@ +function a([b, c]) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/options.json new file mode 100644 index 0000000000..e58bc7432b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/output.mjs new file mode 100644 index 0000000000..17080a950c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-params/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; + +function a(_ref) { + var [b, c] = _ref; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/input.mjs new file mode 100644 index 0000000000..e68aeb23a8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/input.mjs @@ -0,0 +1 @@ +const [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/options.json new file mode 100644 index 0000000000..e58bc7432b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/output.mjs new file mode 100644 index 0000000000..1e5c9502ea --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-destructuring-variable-declaration/output.mjs @@ -0,0 +1,5 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +var [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/input.mjs new file mode 100644 index 0000000000..c12f5e3a8a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/input.mjs @@ -0,0 +1,12 @@ +var objectClass = Object; +var arrayInstance = []; +var assignStr = "assign"; +var entriesStr = "entries"; +var valuesStr = "values"; +var inclidesStr = "includes"; +var findStr = "find"; + +// Allow static methods be assigned to variables only directly in the module. +externalVar[valuesStr]; // don't include +objectClass[assignStr]({}); // include +arrayInstance[entriesStr]({}); // don't include diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/output.mjs new file mode 100644 index 0000000000..1cd424eea3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-class-methods/output.mjs @@ -0,0 +1,17 @@ +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +import "core-js/modules/es6.object.assign.js"; +var objectClass = Object; +var arrayInstance = []; +var assignStr = "assign"; +var entriesStr = "entries"; +var valuesStr = "values"; +var inclidesStr = "includes"; +var findStr = "find"; // Allow static methods be assigned to variables only directly in the module. + +externalVar[valuesStr]; // don't include + +objectClass[assignStr]({}); // include + +arrayInstance[entriesStr]({}); // don't include diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/input.mjs new file mode 100644 index 0000000000..369046bb15 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/input.mjs @@ -0,0 +1,8 @@ +var arrayInstance = []; +var inclidesStr = "includes"; +var findStr = "find"; + +// Allow instance methods be assigned to variables. +arrayInstance[inclidesStr](); // include +externalVar[findStr]; // include + diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/options.json new file mode 100644 index 0000000000..0158af1783 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/output.mjs new file mode 100644 index 0000000000..e1924e3011 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-instance-methods/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es7.array.includes.js"; +import "core-js/modules/es6.array.find.js"; +var arrayInstance = []; +var inclidesStr = "includes"; +var findStr = "find"; // Allow instance methods be assigned to variables. + +arrayInstance[inclidesStr](); // include + +externalVar[findStr]; // include diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/input.mjs new file mode 100644 index 0000000000..279b65c0b5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/input.mjs @@ -0,0 +1,5 @@ +Object['values'](); // include +[]['map'](); // include + +Object[keys](); // don't include +[][filter](); // don't include diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/options.json new file mode 100644 index 0000000000..0158af1783 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/output.mjs new file mode 100644 index 0000000000..43a10e5c0e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-evaluated-not-confident/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es7.object.values.js"; +import "core-js/modules/es6.array.map.js"; +Object['values'](); // include + +[]['map'](); // include + +Object[keys](); // don't include + +[][filter](); // don't include diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/input.mjs new file mode 100644 index 0000000000..c9f54a8e47 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/input.mjs @@ -0,0 +1,3 @@ +for (const { padStart } of foo) { + console.log('b'.padEnd(5)); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/options.json new file mode 100644 index 0000000000..53c96ff421 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "7" + }, + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/output.mjs new file mode 100644 index 0000000000..eb344aeb18 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-with/output.mjs @@ -0,0 +1,10 @@ +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; + +for (const { + padStart +} of foo) { + console.log('b'.padEnd(5)); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/input.mjs new file mode 100644 index 0000000000..4228bde23c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/input.mjs @@ -0,0 +1,3 @@ +for (const { a } of foo) { + console.log(a); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/options.json new file mode 100644 index 0000000000..ec23cad4bd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "11" + }, + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/output.mjs new file mode 100644 index 0000000000..9b8c02b13b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of-destructure-without/output.mjs @@ -0,0 +1,5 @@ +for (const { + a +} of foo) { + console.log(a); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/input.mjs new file mode 100644 index 0000000000..9f6660a25f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/input.mjs @@ -0,0 +1 @@ +for (let a of b); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/options.json new file mode 100644 index 0000000000..ef3d4db9f2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-for-of"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/output.mjs new file mode 100644 index 0000000000..817e9ae57c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-for-of/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; + +for (var a of b) { + ; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/input.mjs new file mode 100644 index 0000000000..35cd0f9960 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/input.mjs @@ -0,0 +1,12 @@ +Array.from; // static function +Map; // top level built-in + +// instance methods may have false positives (which is ok) +a.includes(); // method call +b['find'] // computed string? +c.prototype.findIndex(); // .prototype +d.fill.bind(); //.bind +e.padStart.apply(); // .apply +f.padEnd.call(); // .call +String.prototype.startsWith.call; // prototype.call +var { codePointAt, endsWith } = k; // destructuring diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/options.json new file mode 100644 index 0000000000..de79358da2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "targets": { + "chrome": 71 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/output.mjs new file mode 100644 index 0000000000..92269937e9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods-native-support/output.mjs @@ -0,0 +1,24 @@ +import "core-js/modules/web.dom.iterable.js"; +Array.from; // static function + +Map; // top level built-in +// instance methods may have false positives (which is ok) + +a.includes(); // method call + +b['find']; // computed string? + +c.prototype.findIndex(); // .prototype + +d.fill.bind(); //.bind + +e.padStart.apply(); // .apply + +f.padEnd.call(); // .call + +String.prototype.startsWith.call; // prototype.call + +var { + codePointAt, + endsWith +} = k; // destructuring diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/input.mjs new file mode 100644 index 0000000000..4528eff880 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/input.mjs @@ -0,0 +1,20 @@ +Array.from; // static function +Map; // top level built-in + +// instance methods may have false positives (which is ok) +a.includes(); // method call +b['find'] // computed string? +c.prototype.findIndex(); // .prototype +d.fill.bind(); //.bind +e.padStart.apply(); // .apply +f.padEnd.call(); // .call +String.prototype.startsWith.call; // prototype.call +var { codePointAt, endsWith } = k; // destructuring + +var asdf = "copyWithin"; +var asdf2 = "split"; +var asdf3 = "re" + "place"; +i[asdf]; // computed with identifier +j[`search`]; // computed with template +k[asdf3] // computed with concat strings +var { [asdf2]: _a } = k; // computed diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/options.json new file mode 100644 index 0000000000..0158af1783 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/output.mjs new file mode 100644 index 0000000000..31ad019c07 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-instance-methods/output.mjs @@ -0,0 +1,55 @@ +import "core-js/modules/es6.symbol.js"; +import "core-js/modules/es6.array.from.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +import "core-js/modules/es6.map.js"; +import "core-js/modules/es6.string.includes.js"; +import "core-js/modules/es7.array.includes.js"; +import "core-js/modules/es6.array.find.js"; +import "core-js/modules/es6.function.bind.js"; +import "core-js/modules/es6.array.fill.js"; +import "core-js/modules/es7.string.pad-start.js"; +import "core-js/modules/es7.string.pad-end.js"; +import "core-js/modules/es6.string.starts-with.js"; +import "core-js/modules/es6.string.code-point-at.js"; +import "core-js/modules/es6.string.ends-with.js"; +import "core-js/modules/es6.array.copy-within.js"; +import "core-js/modules/es6.regexp.search.js"; +import "core-js/modules/es6.regexp.replace.js"; +import "core-js/modules/es6.regexp.split.js"; +Array.from; // static function + +Map; // top level built-in +// instance methods may have false positives (which is ok) + +a.includes(); // method call + +b['find']; // computed string? + +c.prototype.findIndex(); // .prototype + +d.fill.bind(); //.bind + +e.padStart.apply(); // .apply + +f.padEnd.call(); // .call + +String.prototype.startsWith.call; // prototype.call + +var _k = k, + codePointAt = _k.codePointAt, + endsWith = _k.endsWith; // destructuring + +var asdf = "copyWithin"; +var asdf2 = "split"; +var asdf3 = "re" + "place"; +i[asdf]; // computed with identifier + +j["search"]; // computed with template + +k[asdf3]; // computed with concat strings + +var _k2 = k, + _a = _k2[asdf2]; // computed diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/input.mjs new file mode 100644 index 0000000000..3f57abb605 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/input.mjs @@ -0,0 +1,2 @@ +import * as ns from "ns"; +ns.map; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/options.json new file mode 100644 index 0000000000..429ee132c9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/output.mjs new file mode 100644 index 0000000000..4efb9b0a49 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-namespaced/output.mjs @@ -0,0 +1,3 @@ +import * as ns from "ns"; +ns.map; + diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/input.mjs new file mode 100644 index 0000000000..a2b81d72e3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/input.mjs @@ -0,0 +1 @@ +Promise; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/options.json new file mode 100644 index 0000000000..32ed21fb6f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/output.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/output.js new file mode 100644 index 0000000000..1a2dd8c57e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-modules-transform/output.js @@ -0,0 +1,7 @@ +"use strict"; + +require("core-js/modules/es6.object.to-string.js"); + +require("core-js/modules/es6.promise.js"); + +Promise; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/input.mjs new file mode 100644 index 0000000000..68285538d3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/input.mjs @@ -0,0 +1,25 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed + +// not covered by this plugin +var asdf = 'copyWithin'; +i[asdf]; // computed with identifier +j[`copyWithin`]; // computed with template +var { [asdf]: _a } = k; // computed diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/options.json new file mode 100644 index 0000000000..de79358da2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "targets": { + "chrome": 71 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/output.mjs new file mode 100644 index 0000000000..a47c05365d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-native-support/output.mjs @@ -0,0 +1,37 @@ +import "core-js/modules/web.dom.iterable.js"; +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression +// no import + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed +// not covered by this plugin + + +var asdf = 'copyWithin'; +i[asdf]; // computed with identifier + +j[`copyWithin`]; // computed with template + +var { + [asdf]: _a +} = k; // computed diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/input.mjs new file mode 100644 index 0000000000..f688910ec0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/input.mjs @@ -0,0 +1 @@ +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/output.mjs new file mode 100644 index 0000000000..f688910ec0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-builtins/output.mjs @@ -0,0 +1 @@ +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/input.mjs new file mode 100644 index 0000000000..31f2d79f9a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/input.mjs @@ -0,0 +1,2 @@ +import "not-core-js"; +import "not-babel-polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/options.json new file mode 100644 index 0000000000..ff03663237 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/output.mjs new file mode 100644 index 0000000000..31f2d79f9a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-no-transform/output.mjs @@ -0,0 +1,2 @@ +import "not-core-js"; +import "not-babel-polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/input.mjs new file mode 100644 index 0000000000..f71c85f35e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/input.mjs @@ -0,0 +1,2 @@ +Number.parseFloat("3.14"); +Number.parseInt("10"); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/options.json new file mode 100644 index 0000000000..e793b91733 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "ie": "11" + }, + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/output.mjs new file mode 100644 index 0000000000..8bd9d159b7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-number-ie-11/output.mjs @@ -0,0 +1,5 @@ +import "core-js/modules/es6.number.parse-float.js"; +import "core-js/modules/es6.number.constructor.js"; +import "core-js/modules/es6.number.parse-int.js"; +Number.parseFloat("3.14"); +Number.parseInt("10"); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/input.mjs new file mode 100644 index 0000000000..0fef928e16 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/input.mjs @@ -0,0 +1,4 @@ +var p = Promise.resolve(0); +Promise.all([p]).then(outcome => { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/options.json new file mode 100644 index 0000000000..133e1e9298 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie > 10"] + }, + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/output.mjs new file mode 100644 index 0000000000..f2f61fd501 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-all/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +var p = Promise.resolve(0); +Promise.all([p]).then(function (outcome) { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/input.mjs new file mode 100644 index 0000000000..bb634febe9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/input.mjs @@ -0,0 +1,4 @@ +var p = Promise.resolve(0); +p.finally(() => { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/options.json new file mode 100644 index 0000000000..133e1e9298 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie > 10"] + }, + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/output.mjs new file mode 100644 index 0000000000..32f8cc5285 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-finally/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es7.promise.finally.js"; +var p = Promise.resolve(0); +p.finally(function () { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/input.mjs new file mode 100644 index 0000000000..334252838b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/input.mjs @@ -0,0 +1,4 @@ +var p = Promise.resolve(0); +Promise.race([p]).then(outcome => { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/options.json new file mode 100644 index 0000000000..133e1e9298 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie > 10"] + }, + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/output.mjs new file mode 100644 index 0000000000..49488098a1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-promise-race/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.promise.js"; +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +var p = Promise.resolve(0); +Promise.race([p]).then(function (outcome) { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/input.mjs new file mode 100644 index 0000000000..8f6724b27f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/input.mjs @@ -0,0 +1 @@ +async function a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/options.json new file mode 100644 index 0000000000..a1b9ada1e8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "targets": { + "chrome": 70 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/output.mjs new file mode 100644 index 0000000000..5d965c6200 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-and-promise-native-support/output.mjs @@ -0,0 +1 @@ +async function a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/input.mjs new file mode 100644 index 0000000000..8f6724b27f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/input.mjs @@ -0,0 +1 @@ +async function a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/options.json new file mode 100644 index 0000000000..d5fc31f154 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "targets": { + "chrome": 55 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/output.mjs new file mode 100644 index 0000000000..5d965c6200 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async-native-support/output.mjs @@ -0,0 +1 @@ +async function a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/input.mjs new file mode 100644 index 0000000000..8f6724b27f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/input.mjs @@ -0,0 +1 @@ +async function a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/output.mjs new file mode 100644 index 0000000000..2a8ae71534 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-async/output.mjs @@ -0,0 +1,26 @@ +import "regenerator-runtime/runtime.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.promise.js"; + +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } + +function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } + +function a() { + return _a.apply(this, arguments); +} + +function _a() { + _a = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + case "end": + return _context.stop(); + } + } + }, _callee); + })); + return _a.apply(this, arguments); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/input.mjs new file mode 100644 index 0000000000..4df46943d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/input.mjs @@ -0,0 +1 @@ +function* a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/options.json new file mode 100644 index 0000000000..2386a90410 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "targets": { + "node": 6 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/output.mjs new file mode 100644 index 0000000000..4df46943d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator-native-support/output.mjs @@ -0,0 +1 @@ +function* a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/input.mjs new file mode 100644 index 0000000000..74604e9198 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/input.mjs @@ -0,0 +1 @@ +function* a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/output.mjs new file mode 100644 index 0000000000..6534789821 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-regenerator-used-generator/output.mjs @@ -0,0 +1,15 @@ +import "regenerator-runtime/runtime.js"; + +var _marked = /*#__PURE__*/regeneratorRuntime.mark(a); + +function a() { + return regeneratorRuntime.wrap(function a$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + case "end": + return _context.stop(); + } + } + }, _marked); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/input.mjs new file mode 100644 index 0000000000..70627e858b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/input.mjs @@ -0,0 +1,5 @@ +import "@babel/polyfill"; +import "@babel/polyfill"; +require("@babel/polyfill"); +require("@babel/polyfill"); +; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/options.json new file mode 100644 index 0000000000..71b68e4379 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/options.json @@ -0,0 +1,13 @@ +{ + "validateLogs": true, + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/output.mjs new file mode 100644 index 0000000000..092bc2b041 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/output.mjs @@ -0,0 +1 @@ +; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/stderr.txt b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/stderr.txt new file mode 100644 index 0000000000..b0a5f57deb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-remove-babel-polyfill-import/stderr.txt @@ -0,0 +1,11 @@ +When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed. + Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead. + + When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed. + Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead. + + When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed. + Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead. + + When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed. + Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead. diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/input.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/input.js new file mode 100644 index 0000000000..d95854b64f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/input.js @@ -0,0 +1,6 @@ +let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; +let n = { x, y, ...z }; +async function* agf() { + await 1; + yield 2; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/options.json new file mode 100644 index 0000000000..e23083c80f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/options.json @@ -0,0 +1,14 @@ +{ + "sourceType": "module", + "presets": [ + [ + "../../../../lib", + { + "shippedProposals": true, + "targets": { "browsers": "ie 6" }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/output.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/output.js new file mode 100644 index 0000000000..2387243e2f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-shippedProposals/output.js @@ -0,0 +1,95 @@ +"use strict"; + +require("core-js/modules/es6.object.keys.js"); + +require("core-js/modules/es6.array.index-of.js"); + +require("core-js/modules/es6.object.define-property.js"); + +require("core-js/modules/es6.array.filter.js"); + +require("core-js/modules/es6.object.get-own-property-descriptor.js"); + +require("core-js/modules/es6.array.for-each.js"); + +require("core-js/modules/es7.object.get-own-property-descriptors.js"); + +require("core-js/modules/es6.object.define-properties.js"); + +require("regenerator-runtime/runtime.js"); + +require("core-js/modules/es6.object.to-string.js"); + +require("core-js/modules/es6.promise.js"); + +require("core-js/modules/es6.symbol.js"); + +require("core-js/modules/es7.symbol.async-iterator.js"); + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } + +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } + +function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } + +function _awaitAsyncGenerator(value) { return new _AwaitValue(value); } + +function _wrapAsyncGenerator(fn) { return function () { return new _AsyncGenerator(fn.apply(this, arguments)); }; } + +function _AsyncGenerator(gen) { var front, back; function send(key, arg) { return new Promise(function (resolve, reject) { var request = { key: key, arg: arg, resolve: resolve, reject: reject, next: null }; if (back) { back = back.next = request; } else { front = back = request; resume(key, arg); } }); } function resume(key, arg) { try { var result = gen[key](arg); var value = result.value; var wrappedAwait = value instanceof _AwaitValue; Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) { if (wrappedAwait) { resume(key === "return" ? "return" : "next", arg); return; } settle(result.done ? "return" : "normal", arg); }, function (err) { resume("throw", err); }); } catch (err) { settle("throw", err); } } function settle(type, value) { switch (type) { case "return": front.resolve({ value: value, done: true }); break; case "throw": front.reject(value); break; default: front.resolve({ value: value, done: false }); break; } front = front.next; if (front) { resume(front.key, front.arg); } else { back = null; } } this._invoke = send; if (typeof gen["return"] !== "function") { this["return"] = undefined; } } + +if (typeof Symbol === "function" && Symbol.asyncIterator) { _AsyncGenerator.prototype[Symbol.asyncIterator] = function () { return this; }; } + +_AsyncGenerator.prototype.next = function (arg) { return this._invoke("next", arg); }; + +_AsyncGenerator.prototype["throw"] = function (arg) { return this._invoke("throw", arg); }; + +_AsyncGenerator.prototype["return"] = function (arg) { return this._invoke("return", arg); }; + +function _AwaitValue(value) { this.wrapped = value; } + +var _x$y$a$b = { + x: 1, + y: 2, + a: 3, + b: 4 +}, + x = _x$y$a$b.x, + y = _x$y$a$b.y, + z = _objectWithoutProperties(_x$y$a$b, ["x", "y"]); + +var n = _objectSpread({ + x: x, + y: y +}, z); + +function agf() { + return _agf.apply(this, arguments); +} + +function _agf() { + _agf = _wrapAsyncGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return _awaitAsyncGenerator(1); + + case 2: + _context.next = 4; + return 2; + + case 4: + case "end": + return _context.stop(); + } + } + }, _callee); + })); + return _agf.apply(this, arguments); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/input.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/input.js new file mode 100644 index 0000000000..39f9e5858b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/input.js @@ -0,0 +1,8 @@ +require("foo"); + +const x = new Promise(resolve => { + const p = []; + + if (p.includes("a")) { + } +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/options.json new file mode 100644 index 0000000000..5bf97a806e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "targets": { + "node": "4.0.0" + }, + "useBuiltIns": "usage", + "corejs": 2, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/output.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/output.js new file mode 100644 index 0000000000..b90acefd8b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script-query/output.js @@ -0,0 +1,13 @@ +require("core-js/modules/es6.object.to-string.js"); + +require("core-js/modules/es6.promise.js"); + +require("core-js/modules/es7.array.includes.js"); + +require("foo"); + +var x = new Promise(function (resolve) { + var p = []; + + if (p.includes("a")) {} +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/input.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/input.js new file mode 100644 index 0000000000..39f9e5858b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/input.js @@ -0,0 +1,8 @@ +require("foo"); + +const x = new Promise(resolve => { + const p = []; + + if (p.includes("a")) { + } +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/options.json new file mode 100644 index 0000000000..5bf97a806e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "targets": { + "node": "4.0.0" + }, + "useBuiltIns": "usage", + "corejs": 2, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/output.js b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/output.js new file mode 100644 index 0000000000..b90acefd8b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-source-type-script/output.js @@ -0,0 +1,13 @@ +require("core-js/modules/es6.object.to-string.js"); + +require("core-js/modules/es6.promise.js"); + +require("core-js/modules/es7.array.includes.js"); + +require("foo"); + +var x = new Promise(function (resolve) { + var p = []; + + if (p.includes("a")) {} +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/input.mjs new file mode 100644 index 0000000000..457ddbbd55 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/input.mjs @@ -0,0 +1 @@ +a = [b, ...c]; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/options.json new file mode 100644 index 0000000000..fe86765f38 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false, + "exclude": ["transform-spread"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/output.mjs new file mode 100644 index 0000000000..457ddbbd55 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-spread/output.mjs @@ -0,0 +1 @@ +a = [b, ...c]; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/input.mjs new file mode 100644 index 0000000000..3d72e8e71c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/input.mjs @@ -0,0 +1 @@ +Symbol.iterator in arr diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/output.mjs new file mode 100644 index 0000000000..f2ce29c7ba --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator-in/output.mjs @@ -0,0 +1,6 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +import "core-js/modules/es6.symbol.js"; +Symbol.iterator in arr; diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/input.mjs new file mode 100644 index 0000000000..c44a50ddfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/input.mjs @@ -0,0 +1 @@ +arr[Symbol.iterator]() diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/output.mjs new file mode 100644 index 0000000000..77e49fee07 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-symbol-iterator/output.mjs @@ -0,0 +1,6 @@ +import "core-js/modules/es6.string.iterator.js"; +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.array.iterator.js"; +import "core-js/modules/web.dom.iterable.js"; +import "core-js/modules/es6.symbol.js"; +arr[Symbol.iterator](); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/input.mjs new file mode 100644 index 0000000000..0f5be0d2da --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/input.mjs @@ -0,0 +1,5 @@ +Promise.resolve().then(it => { + setTimeout(foo, 1, 2); + setInterval(foo, 1, 2); + setImmediate(foo, 1, 2); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/output.mjs new file mode 100644 index 0000000000..ecca35a445 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-timers/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es6.object.to-string.js"; +import "core-js/modules/es6.promise.js"; +Promise.resolve().then(function (it) { + setTimeout(foo, 1, 2); + setInterval(foo, 1, 2); + setImmediate(foo, 1, 2); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/input.mjs new file mode 100644 index 0000000000..b0bc068aa0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/input.mjs @@ -0,0 +1 @@ +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/options.json new file mode 100644 index 0000000000..057e2ed59b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "targets": { + "edge": "13" + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/output.mjs new file mode 100644 index 0000000000..b0bc068aa0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-edge-13/output.mjs @@ -0,0 +1 @@ +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/input.mjs new file mode 100644 index 0000000000..2394d067f8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/input.mjs @@ -0,0 +1 @@ +Int8Array.of(); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/output.mjs new file mode 100644 index 0000000000..a2f08cc2f4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array-static/output.mjs @@ -0,0 +1,2 @@ +import "core-js/modules/es6.typed.int8-array.js"; +Int8Array.of(); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/input.mjs new file mode 100644 index 0000000000..b0bc068aa0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/input.mjs @@ -0,0 +1 @@ +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/options.json new file mode 100644 index 0000000000..fe3e4d6cf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/output.mjs new file mode 100644 index 0000000000..06fa6ff956 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-typed-array/output.mjs @@ -0,0 +1,2 @@ +import "core-js/modules/es6.typed.int8-array.js"; +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/input.mjs new file mode 100644 index 0000000000..927d2f2772 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/input.mjs @@ -0,0 +1,3 @@ +function* a() { + yield 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/options.json new file mode 100644 index 0000000000..dae54735f2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "targets": { + "chrome": 55 + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/output.mjs new file mode 100644 index 0000000000..927d2f2772 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-non-star/output.mjs @@ -0,0 +1,3 @@ +function* a() { + yield 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/input.mjs new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/input.mjs @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/options.json b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/options.json new file mode 100644 index 0000000000..dae54735f2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 2, + "targets": { + "chrome": 55 + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/output.mjs new file mode 100644 index 0000000000..8b71967b06 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-yield-star/output.mjs @@ -0,0 +1,5 @@ +import "core-js/modules/web.dom.iterable.js"; + +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs2/entry-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/entry-all/output.mjs index dbac8b661f..aca09a3207 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/entry-all/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/entry-all/output.mjs @@ -1,150 +1,3 @@ -import "core-js/modules/es6.array.copy-within.js"; -import "core-js/modules/es6.array.every.js"; -import "core-js/modules/es6.array.fill.js"; -import "core-js/modules/es6.array.filter.js"; -import "core-js/modules/es6.array.find.js"; -import "core-js/modules/es6.array.find-index.js"; -import "core-js/modules/es7.array.flat-map.js"; -import "core-js/modules/es6.array.for-each.js"; -import "core-js/modules/es6.array.from.js"; -import "core-js/modules/es7.array.includes.js"; -import "core-js/modules/es6.array.index-of.js"; -import "core-js/modules/es6.array.is-array.js"; -import "core-js/modules/es6.array.iterator.js"; -import "core-js/modules/es6.array.last-index-of.js"; -import "core-js/modules/es6.array.map.js"; -import "core-js/modules/es6.array.of.js"; -import "core-js/modules/es6.array.reduce.js"; -import "core-js/modules/es6.array.reduce-right.js"; -import "core-js/modules/es6.array.slice.js"; -import "core-js/modules/es6.array.some.js"; -import "core-js/modules/es6.array.sort.js"; -import "core-js/modules/es6.array.species.js"; -import "core-js/modules/es6.date.now.js"; -import "core-js/modules/es6.date.to-iso-string.js"; -import "core-js/modules/es6.date.to-json.js"; -import "core-js/modules/es6.date.to-primitive.js"; -import "core-js/modules/es6.date.to-string.js"; -import "core-js/modules/es6.function.bind.js"; -import "core-js/modules/es6.function.has-instance.js"; -import "core-js/modules/es6.function.name.js"; -import "core-js/modules/es6.map.js"; -import "core-js/modules/es6.math.acosh.js"; -import "core-js/modules/es6.math.asinh.js"; -import "core-js/modules/es6.math.atanh.js"; -import "core-js/modules/es6.math.cbrt.js"; -import "core-js/modules/es6.math.clz32.js"; -import "core-js/modules/es6.math.cosh.js"; -import "core-js/modules/es6.math.expm1.js"; -import "core-js/modules/es6.math.fround.js"; -import "core-js/modules/es6.math.hypot.js"; -import "core-js/modules/es6.math.imul.js"; -import "core-js/modules/es6.math.log1p.js"; -import "core-js/modules/es6.math.log10.js"; -import "core-js/modules/es6.math.log2.js"; -import "core-js/modules/es6.math.sign.js"; -import "core-js/modules/es6.math.sinh.js"; -import "core-js/modules/es6.math.tanh.js"; -import "core-js/modules/es6.math.trunc.js"; -import "core-js/modules/es6.number.constructor.js"; -import "core-js/modules/es6.number.epsilon.js"; -import "core-js/modules/es6.number.is-finite.js"; -import "core-js/modules/es6.number.is-integer.js"; -import "core-js/modules/es6.number.is-nan.js"; -import "core-js/modules/es6.number.is-safe-integer.js"; -import "core-js/modules/es6.number.max-safe-integer.js"; -import "core-js/modules/es6.number.min-safe-integer.js"; -import "core-js/modules/es6.number.parse-float.js"; -import "core-js/modules/es6.number.parse-int.js"; -import "core-js/modules/es6.object.assign.js"; -import "core-js/modules/es6.object.create.js"; -import "core-js/modules/es7.object.define-getter.js"; -import "core-js/modules/es7.object.define-setter.js"; -import "core-js/modules/es6.object.define-property.js"; -import "core-js/modules/es6.object.define-properties.js"; -import "core-js/modules/es7.object.entries.js"; -import "core-js/modules/es6.object.freeze.js"; -import "core-js/modules/es6.object.get-own-property-descriptor.js"; -import "core-js/modules/es7.object.get-own-property-descriptors.js"; -import "core-js/modules/es6.object.get-own-property-names.js"; -import "core-js/modules/es6.object.get-prototype-of.js"; -import "core-js/modules/es7.object.lookup-getter.js"; -import "core-js/modules/es7.object.lookup-setter.js"; -import "core-js/modules/es6.object.prevent-extensions.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.object.is.js"; -import "core-js/modules/es6.object.is-frozen.js"; -import "core-js/modules/es6.object.is-sealed.js"; -import "core-js/modules/es6.object.is-extensible.js"; -import "core-js/modules/es6.object.keys.js"; -import "core-js/modules/es6.object.seal.js"; -import "core-js/modules/es6.object.set-prototype-of.js"; -import "core-js/modules/es7.object.values.js"; -import "core-js/modules/es6.promise.js"; -import "core-js/modules/es7.promise.finally.js"; -import "core-js/modules/es6.reflect.apply.js"; -import "core-js/modules/es6.reflect.construct.js"; -import "core-js/modules/es6.reflect.define-property.js"; -import "core-js/modules/es6.reflect.delete-property.js"; -import "core-js/modules/es6.reflect.get.js"; -import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; -import "core-js/modules/es6.reflect.get-prototype-of.js"; -import "core-js/modules/es6.reflect.has.js"; -import "core-js/modules/es6.reflect.is-extensible.js"; -import "core-js/modules/es6.reflect.own-keys.js"; -import "core-js/modules/es6.reflect.prevent-extensions.js"; -import "core-js/modules/es6.reflect.set.js"; -import "core-js/modules/es6.reflect.set-prototype-of.js"; -import "core-js/modules/es6.regexp.constructor.js"; -import "core-js/modules/es6.regexp.flags.js"; -import "core-js/modules/es6.regexp.match.js"; -import "core-js/modules/es6.regexp.replace.js"; -import "core-js/modules/es6.regexp.split.js"; -import "core-js/modules/es6.regexp.search.js"; -import "core-js/modules/es6.regexp.to-string.js"; -import "core-js/modules/es6.set.js"; -import "core-js/modules/es6.symbol.js"; -import "core-js/modules/es7.symbol.async-iterator.js"; -import "core-js/modules/es6.string.anchor.js"; -import "core-js/modules/es6.string.big.js"; -import "core-js/modules/es6.string.blink.js"; -import "core-js/modules/es6.string.bold.js"; -import "core-js/modules/es6.string.code-point-at.js"; -import "core-js/modules/es6.string.ends-with.js"; -import "core-js/modules/es6.string.fixed.js"; -import "core-js/modules/es6.string.fontcolor.js"; -import "core-js/modules/es6.string.fontsize.js"; -import "core-js/modules/es6.string.from-code-point.js"; -import "core-js/modules/es6.string.includes.js"; -import "core-js/modules/es6.string.italics.js"; -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.string.link.js"; -import "core-js/modules/es7.string.pad-start.js"; -import "core-js/modules/es7.string.pad-end.js"; -import "core-js/modules/es6.string.raw.js"; -import "core-js/modules/es6.string.repeat.js"; -import "core-js/modules/es6.string.small.js"; -import "core-js/modules/es6.string.starts-with.js"; -import "core-js/modules/es6.string.strike.js"; -import "core-js/modules/es6.string.sub.js"; -import "core-js/modules/es6.string.sup.js"; -import "core-js/modules/es6.string.trim.js"; -import "core-js/modules/es7.string.trim-left.js"; -import "core-js/modules/es7.string.trim-right.js"; -import "core-js/modules/es6.typed.array-buffer.js"; -import "core-js/modules/es6.typed.data-view.js"; -import "core-js/modules/es6.typed.int8-array.js"; -import "core-js/modules/es6.typed.uint8-array.js"; -import "core-js/modules/es6.typed.uint8-clamped-array.js"; -import "core-js/modules/es6.typed.int16-array.js"; -import "core-js/modules/es6.typed.uint16-array.js"; -import "core-js/modules/es6.typed.int32-array.js"; -import "core-js/modules/es6.typed.uint32-array.js"; -import "core-js/modules/es6.typed.float32-array.js"; -import "core-js/modules/es6.typed.float64-array.js"; -import "core-js/modules/es6.weak-map.js"; -import "core-js/modules/es6.weak-set.js"; import "core-js/modules/web.timers.js"; import "core-js/modules/web.immediate.js"; import "core-js/modules/web.dom.iterable.js"; -import "regenerator-runtime/runtime.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/exclude-regenerator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/exclude-regenerator/output.mjs index 8d85179fe4..aca09a3207 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/exclude-regenerator/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/exclude-regenerator/output.mjs @@ -1,149 +1,3 @@ -import "core-js/modules/es6.array.copy-within.js"; -import "core-js/modules/es6.array.every.js"; -import "core-js/modules/es6.array.fill.js"; -import "core-js/modules/es6.array.filter.js"; -import "core-js/modules/es6.array.find.js"; -import "core-js/modules/es6.array.find-index.js"; -import "core-js/modules/es7.array.flat-map.js"; -import "core-js/modules/es6.array.for-each.js"; -import "core-js/modules/es6.array.from.js"; -import "core-js/modules/es7.array.includes.js"; -import "core-js/modules/es6.array.index-of.js"; -import "core-js/modules/es6.array.is-array.js"; -import "core-js/modules/es6.array.iterator.js"; -import "core-js/modules/es6.array.last-index-of.js"; -import "core-js/modules/es6.array.map.js"; -import "core-js/modules/es6.array.of.js"; -import "core-js/modules/es6.array.reduce.js"; -import "core-js/modules/es6.array.reduce-right.js"; -import "core-js/modules/es6.array.slice.js"; -import "core-js/modules/es6.array.some.js"; -import "core-js/modules/es6.array.sort.js"; -import "core-js/modules/es6.array.species.js"; -import "core-js/modules/es6.date.now.js"; -import "core-js/modules/es6.date.to-iso-string.js"; -import "core-js/modules/es6.date.to-json.js"; -import "core-js/modules/es6.date.to-primitive.js"; -import "core-js/modules/es6.date.to-string.js"; -import "core-js/modules/es6.function.bind.js"; -import "core-js/modules/es6.function.has-instance.js"; -import "core-js/modules/es6.function.name.js"; -import "core-js/modules/es6.map.js"; -import "core-js/modules/es6.math.acosh.js"; -import "core-js/modules/es6.math.asinh.js"; -import "core-js/modules/es6.math.atanh.js"; -import "core-js/modules/es6.math.cbrt.js"; -import "core-js/modules/es6.math.clz32.js"; -import "core-js/modules/es6.math.cosh.js"; -import "core-js/modules/es6.math.expm1.js"; -import "core-js/modules/es6.math.fround.js"; -import "core-js/modules/es6.math.hypot.js"; -import "core-js/modules/es6.math.imul.js"; -import "core-js/modules/es6.math.log1p.js"; -import "core-js/modules/es6.math.log10.js"; -import "core-js/modules/es6.math.log2.js"; -import "core-js/modules/es6.math.sign.js"; -import "core-js/modules/es6.math.sinh.js"; -import "core-js/modules/es6.math.tanh.js"; -import "core-js/modules/es6.math.trunc.js"; -import "core-js/modules/es6.number.constructor.js"; -import "core-js/modules/es6.number.epsilon.js"; -import "core-js/modules/es6.number.is-finite.js"; -import "core-js/modules/es6.number.is-integer.js"; -import "core-js/modules/es6.number.is-nan.js"; -import "core-js/modules/es6.number.is-safe-integer.js"; -import "core-js/modules/es6.number.max-safe-integer.js"; -import "core-js/modules/es6.number.min-safe-integer.js"; -import "core-js/modules/es6.number.parse-float.js"; -import "core-js/modules/es6.number.parse-int.js"; -import "core-js/modules/es6.object.assign.js"; -import "core-js/modules/es6.object.create.js"; -import "core-js/modules/es7.object.define-getter.js"; -import "core-js/modules/es7.object.define-setter.js"; -import "core-js/modules/es6.object.define-property.js"; -import "core-js/modules/es6.object.define-properties.js"; -import "core-js/modules/es7.object.entries.js"; -import "core-js/modules/es6.object.freeze.js"; -import "core-js/modules/es6.object.get-own-property-descriptor.js"; -import "core-js/modules/es7.object.get-own-property-descriptors.js"; -import "core-js/modules/es6.object.get-own-property-names.js"; -import "core-js/modules/es6.object.get-prototype-of.js"; -import "core-js/modules/es7.object.lookup-getter.js"; -import "core-js/modules/es7.object.lookup-setter.js"; -import "core-js/modules/es6.object.prevent-extensions.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.object.is.js"; -import "core-js/modules/es6.object.is-frozen.js"; -import "core-js/modules/es6.object.is-sealed.js"; -import "core-js/modules/es6.object.is-extensible.js"; -import "core-js/modules/es6.object.keys.js"; -import "core-js/modules/es6.object.seal.js"; -import "core-js/modules/es6.object.set-prototype-of.js"; -import "core-js/modules/es7.object.values.js"; -import "core-js/modules/es6.promise.js"; -import "core-js/modules/es7.promise.finally.js"; -import "core-js/modules/es6.reflect.apply.js"; -import "core-js/modules/es6.reflect.construct.js"; -import "core-js/modules/es6.reflect.define-property.js"; -import "core-js/modules/es6.reflect.delete-property.js"; -import "core-js/modules/es6.reflect.get.js"; -import "core-js/modules/es6.reflect.get-own-property-descriptor.js"; -import "core-js/modules/es6.reflect.get-prototype-of.js"; -import "core-js/modules/es6.reflect.has.js"; -import "core-js/modules/es6.reflect.is-extensible.js"; -import "core-js/modules/es6.reflect.own-keys.js"; -import "core-js/modules/es6.reflect.prevent-extensions.js"; -import "core-js/modules/es6.reflect.set.js"; -import "core-js/modules/es6.reflect.set-prototype-of.js"; -import "core-js/modules/es6.regexp.constructor.js"; -import "core-js/modules/es6.regexp.flags.js"; -import "core-js/modules/es6.regexp.match.js"; -import "core-js/modules/es6.regexp.replace.js"; -import "core-js/modules/es6.regexp.split.js"; -import "core-js/modules/es6.regexp.search.js"; -import "core-js/modules/es6.regexp.to-string.js"; -import "core-js/modules/es6.set.js"; -import "core-js/modules/es6.symbol.js"; -import "core-js/modules/es7.symbol.async-iterator.js"; -import "core-js/modules/es6.string.anchor.js"; -import "core-js/modules/es6.string.big.js"; -import "core-js/modules/es6.string.blink.js"; -import "core-js/modules/es6.string.bold.js"; -import "core-js/modules/es6.string.code-point-at.js"; -import "core-js/modules/es6.string.ends-with.js"; -import "core-js/modules/es6.string.fixed.js"; -import "core-js/modules/es6.string.fontcolor.js"; -import "core-js/modules/es6.string.fontsize.js"; -import "core-js/modules/es6.string.from-code-point.js"; -import "core-js/modules/es6.string.includes.js"; -import "core-js/modules/es6.string.italics.js"; -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.string.link.js"; -import "core-js/modules/es7.string.pad-start.js"; -import "core-js/modules/es7.string.pad-end.js"; -import "core-js/modules/es6.string.raw.js"; -import "core-js/modules/es6.string.repeat.js"; -import "core-js/modules/es6.string.small.js"; -import "core-js/modules/es6.string.starts-with.js"; -import "core-js/modules/es6.string.strike.js"; -import "core-js/modules/es6.string.sub.js"; -import "core-js/modules/es6.string.sup.js"; -import "core-js/modules/es6.string.trim.js"; -import "core-js/modules/es7.string.trim-left.js"; -import "core-js/modules/es7.string.trim-right.js"; -import "core-js/modules/es6.typed.array-buffer.js"; -import "core-js/modules/es6.typed.data-view.js"; -import "core-js/modules/es6.typed.int8-array.js"; -import "core-js/modules/es6.typed.uint8-array.js"; -import "core-js/modules/es6.typed.uint8-clamped-array.js"; -import "core-js/modules/es6.typed.int16-array.js"; -import "core-js/modules/es6.typed.uint16-array.js"; -import "core-js/modules/es6.typed.int32-array.js"; -import "core-js/modules/es6.typed.uint32-array.js"; -import "core-js/modules/es6.typed.float32-array.js"; -import "core-js/modules/es6.typed.float64-array.js"; -import "core-js/modules/es6.weak-map.js"; -import "core-js/modules/es6.weak-set.js"; import "core-js/modules/web.timers.js"; import "core-js/modules/web.immediate.js"; import "core-js/modules/web.dom.iterable.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/options.json b/packages/babel-preset-env/test/fixtures/corejs2/options.json index 8da9fa5b3d..5c577bc8df 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/options.json +++ b/packages/babel-preset-env/test/fixtures/corejs2/options.json @@ -1,3 +1,4 @@ { - "externalHelpers": false + "externalHelpers": false, + "BABEL_8_BREAKING": true } diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-all/output.mjs index 34f444b0ab..d57938e831 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-all/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-all/output.mjs @@ -1,12 +1,4 @@ -import "core-js/modules/es6.symbol.js"; -import "core-js/modules/es6.array.from.js"; -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -import "core-js/modules/es6.map.js"; -import "core-js/modules/es6.promise.js"; -import "core-js/modules/es6.regexp.match.js"; Array.from; // static method Map; // built-in diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-assignment/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-assignment/output.mjs index a4115d2ceb..0959d08651 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-assignment/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-assignment/output.mjs @@ -1,5 +1,2 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-catch/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-catch/output.mjs index a01e5eccef..b7de81db89 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-catch/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-catch/output.mjs @@ -1,6 +1,3 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; try { diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-for-x/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-for-x/output.mjs index af3a372047..e15846b833 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-for-x/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-for-x/output.mjs @@ -1,8 +1,3 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -for (var [a, b] in c) { - ; -} +for (let [a, b] in c); diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-params/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-params/output.mjs index 17080a950c..364413b753 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-params/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-params/output.mjs @@ -1,8 +1,3 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -function a(_ref) { - var [b, c] = _ref; -} +function a([b, c]) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-variable-declaration/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-variable-declaration/output.mjs index 1e5c9502ea..cbbbdbc3b5 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-variable-declaration/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-destructuring-variable-declaration/output.mjs @@ -1,5 +1,2 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -var [a, b] = c; +const [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-class-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-class-methods/output.mjs index 1cd424eea3..91916b7191 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-class-methods/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-class-methods/output.mjs @@ -1,7 +1,4 @@ -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -import "core-js/modules/es6.object.assign.js"; var objectClass = Object; var arrayInstance = []; var assignStr = "assign"; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-for-of/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-for-of/output.mjs index 817e9ae57c..dd3e262cae 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-for-of/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-for-of/output.mjs @@ -1,8 +1,3 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -for (var a of b) { - ; -} +for (let a of b); diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-modules-transform/output.js b/packages/babel-preset-env/test/fixtures/corejs2/usage-modules-transform/output.js index 1a2dd8c57e..4822fcdc6f 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-modules-transform/output.js +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-modules-transform/output.js @@ -1,7 +1,3 @@ "use strict"; -require("core-js/modules/es6.object.to-string.js"); - -require("core-js/modules/es6.promise.js"); - Promise; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-async/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-async/output.mjs index 2a8ae71534..5d965c6200 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-async/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-async/output.mjs @@ -1,26 +1 @@ -import "regenerator-runtime/runtime.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.promise.js"; - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function a() { - return _a.apply(this, arguments); -} - -function _a() { - _a = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _a.apply(this, arguments); -} +async function a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-generator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-generator/output.mjs index 6534789821..4df46943d2 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-generator/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-regenerator-used-generator/output.mjs @@ -1,15 +1 @@ -import "regenerator-runtime/runtime.js"; - -var _marked = /*#__PURE__*/regeneratorRuntime.mark(a); - -function a() { - return regeneratorRuntime.wrap(function a$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - case "end": - return _context.stop(); - } - } - }, _marked); -} +function* a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator-in/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator-in/output.mjs index f2ce29c7ba..e98082f1df 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator-in/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator-in/output.mjs @@ -1,6 +1,2 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -import "core-js/modules/es6.symbol.js"; Symbol.iterator in arr; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator/output.mjs index 77e49fee07..b247474945 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-symbol-iterator/output.mjs @@ -1,6 +1,2 @@ -import "core-js/modules/es6.string.iterator.js"; -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.array.iterator.js"; import "core-js/modules/web.dom.iterable.js"; -import "core-js/modules/es6.symbol.js"; arr[Symbol.iterator](); diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-timers/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-timers/output.mjs index ecca35a445..0f5be0d2da 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-timers/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-timers/output.mjs @@ -1,6 +1,4 @@ -import "core-js/modules/es6.object.to-string.js"; -import "core-js/modules/es6.promise.js"; -Promise.resolve().then(function (it) { +Promise.resolve().then(it => { setTimeout(foo, 1, 2); setInterval(foo, 1, 2); setImmediate(foo, 1, 2); diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array-static/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array-static/output.mjs index a2f08cc2f4..2394d067f8 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array-static/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array-static/output.mjs @@ -1,2 +1 @@ -import "core-js/modules/es6.typed.int8-array.js"; Int8Array.of(); diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array/output.mjs index 06fa6ff956..b0bc068aa0 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-typed-array/output.mjs @@ -1,2 +1 @@ -import "core-js/modules/es6.typed.int8-array.js"; new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/.entry-all-exec/exec.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/.entry-all-exec/exec.js new file mode 100644 index 0000000000..dc2f5fc562 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/.entry-all-exec/exec.js @@ -0,0 +1,3 @@ +if (parseInt(process.version.slice(1)) > 5) { + require('core-js'); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/.entry-all-exec/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/.entry-all-exec/options.json new file mode 100644 index 0000000000..ebc91c6d0f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/.entry-all-exec/options.json @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/input.mjs new file mode 100644 index 0000000000..c0ce4c954e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/output.mjs new file mode 100644 index 0000000000..34375ab962 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all-chrome-71/output.mjs @@ -0,0 +1,88 @@ +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; +import "core-js/modules/web.immediate.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/input.mjs new file mode 100644 index 0000000000..c0ce4c954e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/input.mjs @@ -0,0 +1,2 @@ +import 'core-js'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/output.mjs new file mode 100644 index 0000000000..fd39d7a3b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-all/output.mjs @@ -0,0 +1,291 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.is-concat-spreadable.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-primitive.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.symbol.unscopables.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.array.every.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.array.find-index.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.for-each.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.index-of.js"; +import "core-js/modules/es.array.is-array.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.join.js"; +import "core-js/modules/es.array.last-index-of.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.reverse.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.some.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.array-buffer.constructor.js"; +import "core-js/modules/es.array-buffer.is-view.js"; +import "core-js/modules/es.array-buffer.slice.js"; +import "core-js/modules/es.data-view.js"; +import "core-js/modules/es.date.now.js"; +import "core-js/modules/es.date.to-iso-string.js"; +import "core-js/modules/es.date.to-json.js"; +import "core-js/modules/es.date.to-primitive.js"; +import "core-js/modules/es.date.to-string.js"; +import "core-js/modules/es.function.bind.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.function.name.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.asinh.js"; +import "core-js/modules/es.math.atanh.js"; +import "core-js/modules/es.math.cbrt.js"; +import "core-js/modules/es.math.clz32.js"; +import "core-js/modules/es.math.cosh.js"; +import "core-js/modules/es.math.expm1.js"; +import "core-js/modules/es.math.fround.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.imul.js"; +import "core-js/modules/es.math.log10.js"; +import "core-js/modules/es.math.log1p.js"; +import "core-js/modules/es.math.log2.js"; +import "core-js/modules/es.math.sign.js"; +import "core-js/modules/es.math.sinh.js"; +import "core-js/modules/es.math.tanh.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.math.trunc.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.epsilon.js"; +import "core-js/modules/es.number.is-finite.js"; +import "core-js/modules/es.number.is-integer.js"; +import "core-js/modules/es.number.is-nan.js"; +import "core-js/modules/es.number.is-safe-integer.js"; +import "core-js/modules/es.number.max-safe-integer.js"; +import "core-js/modules/es.number.min-safe-integer.js"; +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.parse-int.js"; +import "core-js/modules/es.number.to-fixed.js"; +import "core-js/modules/es.number.to-precision.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.create.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-properties.js"; +import "core-js/modules/es.object.define-property.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.set-prototype-of.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.parse-float.js"; +import "core-js/modules/es.parse-int.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.from-code-point.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.raw.js"; +import "core-js/modules/es.string.repeat.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.string.anchor.js"; +import "core-js/modules/es.string.big.js"; +import "core-js/modules/es.string.blink.js"; +import "core-js/modules/es.string.bold.js"; +import "core-js/modules/es.string.fixed.js"; +import "core-js/modules/es.string.fontcolor.js"; +import "core-js/modules/es.string.fontsize.js"; +import "core-js/modules/es.string.italics.js"; +import "core-js/modules/es.string.link.js"; +import "core-js/modules/es.string.small.js"; +import "core-js/modules/es.string.strike.js"; +import "core-js/modules/es.string.sub.js"; +import "core-js/modules/es.string.sup.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.global-this.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/options.json new file mode 100644 index 0000000000..1b870fc522 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/options.json @@ -0,0 +1,13 @@ +{ + "validateLogs": true, + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/output.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/output.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/stderr.txt b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/stderr.txt new file mode 100644 index 0000000000..228f1a0528 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-babel-polyfill/stderr.txt @@ -0,0 +1,2 @@ +`@babel/polyfill` is deprecated. Please, use required parts of `core-js` + and `regenerator-runtime/runtime` separately \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/input.mjs new file mode 100644 index 0000000000..4709961aee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/options.json new file mode 100644 index 0000000000..8d81267b67 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 48 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/output.mjs new file mode 100644 index 0000000000..646201eac7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-48/output.mjs @@ -0,0 +1,99 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.index-of.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.last-index-of.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; +Math.pow(1, 2); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/input.mjs new file mode 100644 index 0000000000..4709961aee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/options.json new file mode 100644 index 0000000000..20c5a15f21 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 49 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/output.mjs new file mode 100644 index 0000000000..1bffec9a70 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-49/output.mjs @@ -0,0 +1,80 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.index-of.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.last-index-of.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; +Math.pow(1, 2); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/input.mjs new file mode 100644 index 0000000000..dc9866842e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/input.mjs @@ -0,0 +1,17 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; + +const foo = { + a: true, +}; + +const bar = { + ...foo, + b: false, +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/options.json new file mode 100644 index 0000000000..68c70de63a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "66" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/output.mjs new file mode 100644 index 0000000000..19da3ba20b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-66/output.mjs @@ -0,0 +1,28 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +const foo = { + a: true +}; +const bar = { ...foo, + b: false +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/input.mjs new file mode 100644 index 0000000000..dc9866842e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/input.mjs @@ -0,0 +1,17 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; + +const foo = { + a: true, +}; + +const bar = { + ...foo, + b: false, +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/output.mjs new file mode 100644 index 0000000000..02962f977b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chrome-71/output.mjs @@ -0,0 +1,19 @@ +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/web.immediate.js"; +const foo = { + a: true +}; +const bar = { ...foo, + b: false +}; + +async function baz() { + for await (const x of someAsyncThing()) { + console.log(x); + } +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/input.mjs new file mode 100644 index 0000000000..4709961aee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/options.json new file mode 100644 index 0000000000..64487f4c5f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": "chromeandroid 59" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/output.mjs new file mode 100644 index 0000000000..91fa5d14fb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-chromeandroid/output.mjs @@ -0,0 +1,28 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/input.mjs new file mode 100644 index 0000000000..6d00700f42 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; + +a ** b; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/options.json new file mode 100644 index 0000000000..de3541c8af --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "electron": "1.4" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/output.mjs new file mode 100644 index 0000000000..8292da048e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-electron/output.mjs @@ -0,0 +1,32 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +a ** b; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/input.mjs new file mode 100644 index 0000000000..cda864f101 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/es'; +import 'core-js/proposals'; +import 'core-js/stage'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/output.mjs new file mode 100644 index 0000000000..5b58ad4287 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage-chrome-71/output.mjs @@ -0,0 +1,87 @@ +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/input.mjs new file mode 100644 index 0000000000..cda864f101 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/es'; +import 'core-js/proposals'; +import 'core-js/stage'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/output.mjs new file mode 100644 index 0000000000..fe66e4a684 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-es-proposals-stage/output.mjs @@ -0,0 +1,286 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.is-concat-spreadable.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-primitive.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.symbol.unscopables.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.array.every.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.array.find-index.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.for-each.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.index-of.js"; +import "core-js/modules/es.array.is-array.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.join.js"; +import "core-js/modules/es.array.last-index-of.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.reverse.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.some.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.array-buffer.constructor.js"; +import "core-js/modules/es.array-buffer.is-view.js"; +import "core-js/modules/es.array-buffer.slice.js"; +import "core-js/modules/es.data-view.js"; +import "core-js/modules/es.date.now.js"; +import "core-js/modules/es.date.to-iso-string.js"; +import "core-js/modules/es.date.to-json.js"; +import "core-js/modules/es.date.to-primitive.js"; +import "core-js/modules/es.date.to-string.js"; +import "core-js/modules/es.function.bind.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.function.name.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.asinh.js"; +import "core-js/modules/es.math.atanh.js"; +import "core-js/modules/es.math.cbrt.js"; +import "core-js/modules/es.math.clz32.js"; +import "core-js/modules/es.math.cosh.js"; +import "core-js/modules/es.math.expm1.js"; +import "core-js/modules/es.math.fround.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.imul.js"; +import "core-js/modules/es.math.log10.js"; +import "core-js/modules/es.math.log1p.js"; +import "core-js/modules/es.math.log2.js"; +import "core-js/modules/es.math.sign.js"; +import "core-js/modules/es.math.sinh.js"; +import "core-js/modules/es.math.tanh.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.math.trunc.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.epsilon.js"; +import "core-js/modules/es.number.is-finite.js"; +import "core-js/modules/es.number.is-integer.js"; +import "core-js/modules/es.number.is-nan.js"; +import "core-js/modules/es.number.is-safe-integer.js"; +import "core-js/modules/es.number.max-safe-integer.js"; +import "core-js/modules/es.number.min-safe-integer.js"; +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.parse-int.js"; +import "core-js/modules/es.number.to-fixed.js"; +import "core-js/modules/es.number.to-precision.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.create.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-properties.js"; +import "core-js/modules/es.object.define-property.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.set-prototype-of.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.parse-float.js"; +import "core-js/modules/es.parse-int.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.from-code-point.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.raw.js"; +import "core-js/modules/es.string.repeat.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.string.anchor.js"; +import "core-js/modules/es.string.big.js"; +import "core-js/modules/es.string.blink.js"; +import "core-js/modules/es.string.bold.js"; +import "core-js/modules/es.string.fixed.js"; +import "core-js/modules/es.string.fontcolor.js"; +import "core-js/modules/es.string.fontsize.js"; +import "core-js/modules/es.string.italics.js"; +import "core-js/modules/es.string.link.js"; +import "core-js/modules/es.string.small.js"; +import "core-js/modules/es.string.strike.js"; +import "core-js/modules/es.string.sub.js"; +import "core-js/modules/es.string.sup.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.global-this.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/input.mjs new file mode 100644 index 0000000000..1dfe5978ed --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/features/set'; +import 'core-js/features/array/from'; +import 'core-js/features/object/from-entries'; +import 'core-js/features/string/replace-all'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/output.mjs new file mode 100644 index 0000000000..799439dd65 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features-chrome-71/output.mjs @@ -0,0 +1,20 @@ +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.string.replace-all.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/input.mjs new file mode 100644 index 0000000000..1dfe5978ed --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/features/set'; +import 'core-js/features/array/from'; +import 'core-js/features/object/from-entries'; +import 'core-js/features/string/replace-all'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/output.mjs new file mode 100644 index 0000000000..6efea38675 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-features/output.mjs @@ -0,0 +1,26 @@ +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.string.replace-all.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/input.mjs new file mode 100644 index 0000000000..98845292d4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/features/set'; +import 'core-js/features/something.new'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/output.mjs new file mode 100644 index 0000000000..2473bf6c70 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-missed/output.mjs @@ -0,0 +1,19 @@ +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import 'core-js/features/something.new'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/input.mjs new file mode 100644 index 0000000000..461f89abcc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/es/object'; +import 'core-js/features/reflect'; +import 'core-js/something'; +import 'regenerator-runtime/runtime'; \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/output.mjs new file mode 100644 index 0000000000..7b9b5ef5db --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed-chrome-71/output.mjs @@ -0,0 +1,11 @@ +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import 'core-js/something'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/input.mjs new file mode 100644 index 0000000000..694e78444f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/es/object'; +import 'core-js/features/reflect'; +import 'core-js/something'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/output.mjs new file mode 100644 index 0000000000..885edac264 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-mixed/output.mjs @@ -0,0 +1,52 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.create.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-properties.js"; +import "core-js/modules/es.object.define-property.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.set-prototype-of.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import 'core-js/something'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/input.mjs new file mode 100644 index 0000000000..e761a4ac12 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/modules/es.symbol'; +import 'core-js/modules/es.object.from-entries'; +import 'core-js/modules/esnext.string.replace-all'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/output.mjs new file mode 100644 index 0000000000..397c25c08b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules-chrome-71/output.mjs @@ -0,0 +1,2 @@ +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.string.replace-all.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/input.mjs new file mode 100644 index 0000000000..e761a4ac12 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/modules/es.symbol'; +import 'core-js/modules/es.object.from-entries'; +import 'core-js/modules/esnext.string.replace-all'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/output.mjs new file mode 100644 index 0000000000..332d84698b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-modules/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/esnext.string.replace-all.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/input.mjs new file mode 100644 index 0000000000..b721678e02 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/proposals'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/output.mjs new file mode 100644 index 0000000000..017c5c10d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals-chrome-71/output.mjs @@ -0,0 +1,81 @@ +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/input.mjs new file mode 100644 index 0000000000..b721678e02 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/proposals'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/output.mjs new file mode 100644 index 0000000000..174594e893 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-proposals/output.mjs @@ -0,0 +1,87 @@ +import "core-js/modules/es.map.js"; +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.global-this.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/input.mjs new file mode 100644 index 0000000000..063b45ea11 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/stable/set'; +import 'core-js/stable/array/from'; +import 'core-js/stable/object/from-entries'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/output.mjs new file mode 100644 index 0000000000..047f318172 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable-chrome-71/output.mjs @@ -0,0 +1 @@ +import "core-js/modules/es.object.from-entries.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/input.mjs new file mode 100644 index 0000000000..063b45ea11 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/stable/set'; +import 'core-js/stable/array/from'; +import 'core-js/stable/object/from-entries'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/output.mjs new file mode 100644 index 0000000000..03d658c2f7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stable/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.object.from-entries.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/input.mjs new file mode 100644 index 0000000000..d7e24c275a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stage'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/output.mjs new file mode 100644 index 0000000000..017c5c10d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage-chrome-71/output.mjs @@ -0,0 +1,81 @@ +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/input.mjs new file mode 100644 index 0000000000..d7e24c275a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stage'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/output.mjs new file mode 100644 index 0000000000..174594e893 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-stage/output.mjs @@ -0,0 +1,87 @@ +import "core-js/modules/es.map.js"; +import "core-js/modules/esnext.aggregate-error.js"; +import "core-js/modules/esnext.array.last-index.js"; +import "core-js/modules/esnext.array.last-item.js"; +import "core-js/modules/esnext.composite-key.js"; +import "core-js/modules/esnext.composite-symbol.js"; +import "core-js/modules/esnext.global-this.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.from.js"; +import "core-js/modules/esnext.map.group-by.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-by.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.of.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.math.clamp.js"; +import "core-js/modules/esnext.math.deg-per-rad.js"; +import "core-js/modules/esnext.math.degrees.js"; +import "core-js/modules/esnext.math.fscale.js"; +import "core-js/modules/esnext.math.iaddh.js"; +import "core-js/modules/esnext.math.imulh.js"; +import "core-js/modules/esnext.math.isubh.js"; +import "core-js/modules/esnext.math.rad-per-deg.js"; +import "core-js/modules/esnext.math.radians.js"; +import "core-js/modules/esnext.math.scale.js"; +import "core-js/modules/esnext.math.seeded-prng.js"; +import "core-js/modules/esnext.math.signbit.js"; +import "core-js/modules/esnext.math.umulh.js"; +import "core-js/modules/esnext.number.from-string.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.promise.all-settled.js"; +import "core-js/modules/esnext.promise.any.js"; +import "core-js/modules/esnext.promise.try.js"; +import "core-js/modules/esnext.reflect.define-metadata.js"; +import "core-js/modules/esnext.reflect.delete-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata.js"; +import "core-js/modules/esnext.reflect.get-metadata-keys.js"; +import "core-js/modules/esnext.reflect.get-own-metadata.js"; +import "core-js/modules/esnext.reflect.get-own-metadata-keys.js"; +import "core-js/modules/esnext.reflect.has-metadata.js"; +import "core-js/modules/esnext.reflect.has-own-metadata.js"; +import "core-js/modules/esnext.reflect.metadata.js"; +import "core-js/modules/esnext.set.add-all.js"; +import "core-js/modules/esnext.set.delete-all.js"; +import "core-js/modules/esnext.set.difference.js"; +import "core-js/modules/esnext.set.every.js"; +import "core-js/modules/esnext.set.filter.js"; +import "core-js/modules/esnext.set.find.js"; +import "core-js/modules/esnext.set.from.js"; +import "core-js/modules/esnext.set.intersection.js"; +import "core-js/modules/esnext.set.is-disjoint-from.js"; +import "core-js/modules/esnext.set.is-subset-of.js"; +import "core-js/modules/esnext.set.is-superset-of.js"; +import "core-js/modules/esnext.set.join.js"; +import "core-js/modules/esnext.set.map.js"; +import "core-js/modules/esnext.set.of.js"; +import "core-js/modules/esnext.set.reduce.js"; +import "core-js/modules/esnext.set.some.js"; +import "core-js/modules/esnext.set.symmetric-difference.js"; +import "core-js/modules/esnext.set.union.js"; +import "core-js/modules/esnext.string.at.js"; +import "core-js/modules/esnext.string.code-points.js"; +import "core-js/modules/esnext.string.match-all.js"; +import "core-js/modules/esnext.string.replace-all.js"; +import "core-js/modules/esnext.symbol.dispose.js"; +import "core-js/modules/esnext.symbol.observable.js"; +import "core-js/modules/esnext.symbol.pattern-match.js"; +import "core-js/modules/esnext.weak-map.delete-all.js"; +import "core-js/modules/esnext.weak-map.from.js"; +import "core-js/modules/esnext.weak-map.of.js"; +import "core-js/modules/esnext.weak-set.add-all.js"; +import "core-js/modules/esnext.weak-set.delete-all.js"; +import "core-js/modules/esnext.weak-set.from.js"; +import "core-js/modules/esnext.weak-set.of.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/input.mjs new file mode 100644 index 0000000000..807283757d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/web'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/output.mjs new file mode 100644 index 0000000000..5e2ff95b9d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web-chrome-71/output.mjs @@ -0,0 +1 @@ +import "core-js/modules/web.immediate.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/input.mjs new file mode 100644 index 0000000000..807283757d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/web'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/output.mjs new file mode 100644 index 0000000000..385b070eeb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-entries-web/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/options.json new file mode 100644 index 0000000000..01a1fc59a5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "ie": 11 + }, + "useBuiltIns": "entry", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/output.mjs new file mode 100644 index 0000000000..efa7715bf9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-11/output.mjs @@ -0,0 +1,182 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.is-concat-spreadable.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-primitive.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.symbol.unscopables.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.array.find-index.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.join.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.array-buffer.constructor.js"; +import "core-js/modules/es.date.to-primitive.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.function.name.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.asinh.js"; +import "core-js/modules/es.math.atanh.js"; +import "core-js/modules/es.math.cbrt.js"; +import "core-js/modules/es.math.clz32.js"; +import "core-js/modules/es.math.cosh.js"; +import "core-js/modules/es.math.expm1.js"; +import "core-js/modules/es.math.fround.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.imul.js"; +import "core-js/modules/es.math.log10.js"; +import "core-js/modules/es.math.log1p.js"; +import "core-js/modules/es.math.log2.js"; +import "core-js/modules/es.math.sign.js"; +import "core-js/modules/es.math.sinh.js"; +import "core-js/modules/es.math.tanh.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.math.trunc.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.epsilon.js"; +import "core-js/modules/es.number.is-finite.js"; +import "core-js/modules/es.number.is-integer.js"; +import "core-js/modules/es.number.is-nan.js"; +import "core-js/modules/es.number.is-safe-integer.js"; +import "core-js/modules/es.number.max-safe-integer.js"; +import "core-js/modules/es.number.min-safe-integer.js"; +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.parse-int.js"; +import "core-js/modules/es.number.to-fixed.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.from-code-point.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.raw.js"; +import "core-js/modules/es.string.repeat.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.string.anchor.js"; +import "core-js/modules/es.string.big.js"; +import "core-js/modules/es.string.blink.js"; +import "core-js/modules/es.string.bold.js"; +import "core-js/modules/es.string.fixed.js"; +import "core-js/modules/es.string.fontcolor.js"; +import "core-js/modules/es.string.fontsize.js"; +import "core-js/modules/es.string.italics.js"; +import "core-js/modules/es.string.link.js"; +import "core-js/modules/es.string.small.js"; +import "core-js/modules/es.string.strike.js"; +import "core-js/modules/es.string.sub.js"; +import "core-js/modules/es.string.sup.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/options.json new file mode 100644 index 0000000000..5f5d88aa28 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "ie": 9 + }, + "useBuiltIns": "entry", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/output.mjs new file mode 100644 index 0000000000..108e8401b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-ie-9/output.mjs @@ -0,0 +1,188 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.is-concat-spreadable.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-primitive.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.symbol.unscopables.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.array.find-index.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.join.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.array-buffer.constructor.js"; +import "core-js/modules/es.array-buffer.is-view.js"; +import "core-js/modules/es.array-buffer.slice.js"; +import "core-js/modules/es.data-view.js"; +import "core-js/modules/es.date.to-primitive.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.function.name.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.asinh.js"; +import "core-js/modules/es.math.atanh.js"; +import "core-js/modules/es.math.cbrt.js"; +import "core-js/modules/es.math.clz32.js"; +import "core-js/modules/es.math.cosh.js"; +import "core-js/modules/es.math.expm1.js"; +import "core-js/modules/es.math.fround.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.imul.js"; +import "core-js/modules/es.math.log10.js"; +import "core-js/modules/es.math.log1p.js"; +import "core-js/modules/es.math.log2.js"; +import "core-js/modules/es.math.sign.js"; +import "core-js/modules/es.math.sinh.js"; +import "core-js/modules/es.math.tanh.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.math.trunc.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.epsilon.js"; +import "core-js/modules/es.number.is-finite.js"; +import "core-js/modules/es.number.is-integer.js"; +import "core-js/modules/es.number.is-nan.js"; +import "core-js/modules/es.number.is-safe-integer.js"; +import "core-js/modules/es.number.max-safe-integer.js"; +import "core-js/modules/es.number.min-safe-integer.js"; +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.parse-int.js"; +import "core-js/modules/es.number.to-fixed.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.set-prototype-of.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.from-code-point.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.raw.js"; +import "core-js/modules/es.string.repeat.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.string.anchor.js"; +import "core-js/modules/es.string.big.js"; +import "core-js/modules/es.string.blink.js"; +import "core-js/modules/es.string.bold.js"; +import "core-js/modules/es.string.fixed.js"; +import "core-js/modules/es.string.fontcolor.js"; +import "core-js/modules/es.string.fontsize.js"; +import "core-js/modules/es.string.italics.js"; +import "core-js/modules/es.string.link.js"; +import "core-js/modules/es.string.small.js"; +import "core-js/modules/es.string.strike.js"; +import "core-js/modules/es.string.sub.js"; +import "core-js/modules/es.string.sup.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/input.mjs new file mode 100644 index 0000000000..4709961aee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/options.json new file mode 100644 index 0000000000..2ffd25a686 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/output.mjs new file mode 100644 index 0000000000..c129ac4e7f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-import/output.mjs @@ -0,0 +1,32 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/options.json new file mode 100644 index 0000000000..cbdaa5e7c5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "10.13" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/output.mjs new file mode 100644 index 0000000000..f375ee9a47 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-10.13/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/web.queue-microtask.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/options.json new file mode 100644 index 0000000000..3ca66ba0ea --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "11" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/output.mjs new file mode 100644 index 0000000000..2b28997de3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-11/output.mjs @@ -0,0 +1,5 @@ +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/web.queue-microtask.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/options.json new file mode 100644 index 0000000000..96cbf1f26d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/options.json @@ -0,0 +1,17 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55", + "node": "7.6" + }, + "modules": false, + "useBuiltIns": "entry", + "forceAllTransforms": true, + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/output.mjs new file mode 100644 index 0000000000..2f6a91bbb2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node-web/output.mjs @@ -0,0 +1,32 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/options.json new file mode 100644 index 0000000000..14e8b3671f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "7.6" + }, + "modules": false, + "useBuiltIns": "entry", + "forceAllTransforms": true, + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/output.mjs new file mode 100644 index 0000000000..845fba0f5b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-node/output.mjs @@ -0,0 +1,27 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/input.mjs new file mode 100644 index 0000000000..5617711cfa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/input.mjs @@ -0,0 +1,7 @@ +import 'core-js/es/map/index.js'; +import 'core-js/es/set/index'; +import 'core-js/es/array/from.js'; +import 'core-js/es/promise/'; +import 'cOrE-jS/eS/SymBOL/iTERator'; +import 'core-js\\es\\symbol\\async-iterator'; +import 'foo/index.js'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/output.mjs new file mode 100644 index 0000000000..75a9f3d439 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-normalization/output.mjs @@ -0,0 +1,11 @@ +import "core-js/modules/es.map.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import 'foo/index.js'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/input.js new file mode 100644 index 0000000000..3872c3ce0a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/input.js @@ -0,0 +1,4 @@ +require('core-js'); +require('regenerator-runtime/runtime'); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/options.json new file mode 100644 index 0000000000..bc7cfa8eb2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/output.js new file mode 100644 index 0000000000..90b771f15f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-all/output.js @@ -0,0 +1,227 @@ +require("core-js/modules/es.symbol.description.js"); + +require("core-js/modules/es.symbol.async-iterator.js"); + +require("core-js/modules/es.array.flat.js"); + +require("core-js/modules/es.array.flat-map.js"); + +require("core-js/modules/es.array.iterator.js"); + +require("core-js/modules/es.array.reduce.js"); + +require("core-js/modules/es.array.reduce-right.js"); + +require("core-js/modules/es.array.sort.js"); + +require("core-js/modules/es.array.unscopables.flat.js"); + +require("core-js/modules/es.array.unscopables.flat-map.js"); + +require("core-js/modules/es.math.hypot.js"); + +require("core-js/modules/es.object.define-getter.js"); + +require("core-js/modules/es.object.define-setter.js"); + +require("core-js/modules/es.object.from-entries.js"); + +require("core-js/modules/es.object.lookup-getter.js"); + +require("core-js/modules/es.object.lookup-setter.js"); + +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.promise.finally.js"); + +require("core-js/modules/es.string.pad-end.js"); + +require("core-js/modules/es.string.pad-start.js"); + +require("core-js/modules/es.string.replace.js"); + +require("core-js/modules/es.string.trim.js"); + +require("core-js/modules/es.string.trim-end.js"); + +require("core-js/modules/es.string.trim-start.js"); + +require("core-js/modules/esnext.aggregate-error.js"); + +require("core-js/modules/esnext.array.last-index.js"); + +require("core-js/modules/esnext.array.last-item.js"); + +require("core-js/modules/esnext.composite-key.js"); + +require("core-js/modules/esnext.composite-symbol.js"); + +require("core-js/modules/esnext.global-this.js"); + +require("core-js/modules/esnext.map.delete-all.js"); + +require("core-js/modules/esnext.map.every.js"); + +require("core-js/modules/esnext.map.filter.js"); + +require("core-js/modules/esnext.map.find.js"); + +require("core-js/modules/esnext.map.find-key.js"); + +require("core-js/modules/esnext.map.from.js"); + +require("core-js/modules/esnext.map.group-by.js"); + +require("core-js/modules/esnext.map.includes.js"); + +require("core-js/modules/esnext.map.key-by.js"); + +require("core-js/modules/esnext.map.key-of.js"); + +require("core-js/modules/esnext.map.map-keys.js"); + +require("core-js/modules/esnext.map.map-values.js"); + +require("core-js/modules/esnext.map.merge.js"); + +require("core-js/modules/esnext.map.of.js"); + +require("core-js/modules/esnext.map.reduce.js"); + +require("core-js/modules/esnext.map.some.js"); + +require("core-js/modules/esnext.map.update.js"); + +require("core-js/modules/esnext.math.clamp.js"); + +require("core-js/modules/esnext.math.deg-per-rad.js"); + +require("core-js/modules/esnext.math.degrees.js"); + +require("core-js/modules/esnext.math.fscale.js"); + +require("core-js/modules/esnext.math.iaddh.js"); + +require("core-js/modules/esnext.math.imulh.js"); + +require("core-js/modules/esnext.math.isubh.js"); + +require("core-js/modules/esnext.math.rad-per-deg.js"); + +require("core-js/modules/esnext.math.radians.js"); + +require("core-js/modules/esnext.math.scale.js"); + +require("core-js/modules/esnext.math.seeded-prng.js"); + +require("core-js/modules/esnext.math.signbit.js"); + +require("core-js/modules/esnext.math.umulh.js"); + +require("core-js/modules/esnext.number.from-string.js"); + +require("core-js/modules/esnext.observable.js"); + +require("core-js/modules/esnext.promise.all-settled.js"); + +require("core-js/modules/esnext.promise.any.js"); + +require("core-js/modules/esnext.promise.try.js"); + +require("core-js/modules/esnext.reflect.define-metadata.js"); + +require("core-js/modules/esnext.reflect.delete-metadata.js"); + +require("core-js/modules/esnext.reflect.get-metadata.js"); + +require("core-js/modules/esnext.reflect.get-metadata-keys.js"); + +require("core-js/modules/esnext.reflect.get-own-metadata.js"); + +require("core-js/modules/esnext.reflect.get-own-metadata-keys.js"); + +require("core-js/modules/esnext.reflect.has-metadata.js"); + +require("core-js/modules/esnext.reflect.has-own-metadata.js"); + +require("core-js/modules/esnext.reflect.metadata.js"); + +require("core-js/modules/esnext.set.add-all.js"); + +require("core-js/modules/esnext.set.delete-all.js"); + +require("core-js/modules/esnext.set.difference.js"); + +require("core-js/modules/esnext.set.every.js"); + +require("core-js/modules/esnext.set.filter.js"); + +require("core-js/modules/esnext.set.find.js"); + +require("core-js/modules/esnext.set.from.js"); + +require("core-js/modules/esnext.set.intersection.js"); + +require("core-js/modules/esnext.set.is-disjoint-from.js"); + +require("core-js/modules/esnext.set.is-subset-of.js"); + +require("core-js/modules/esnext.set.is-superset-of.js"); + +require("core-js/modules/esnext.set.join.js"); + +require("core-js/modules/esnext.set.map.js"); + +require("core-js/modules/esnext.set.of.js"); + +require("core-js/modules/esnext.set.reduce.js"); + +require("core-js/modules/esnext.set.some.js"); + +require("core-js/modules/esnext.set.symmetric-difference.js"); + +require("core-js/modules/esnext.set.union.js"); + +require("core-js/modules/esnext.string.at.js"); + +require("core-js/modules/esnext.string.code-points.js"); + +require("core-js/modules/esnext.string.match-all.js"); + +require("core-js/modules/esnext.string.replace-all.js"); + +require("core-js/modules/esnext.symbol.dispose.js"); + +require("core-js/modules/esnext.symbol.observable.js"); + +require("core-js/modules/esnext.symbol.pattern-match.js"); + +require("core-js/modules/esnext.weak-map.delete-all.js"); + +require("core-js/modules/esnext.weak-map.from.js"); + +require("core-js/modules/esnext.weak-map.of.js"); + +require("core-js/modules/esnext.weak-set.add-all.js"); + +require("core-js/modules/esnext.weak-set.delete-all.js"); + +require("core-js/modules/esnext.weak-set.from.js"); + +require("core-js/modules/esnext.weak-set.of.js"); + +require("core-js/modules/web.dom-collections.for-each.js"); + +require("core-js/modules/web.dom-collections.iterator.js"); + +require("core-js/modules/web.immediate.js"); + +require("core-js/modules/web.queue-microtask.js"); + +require("core-js/modules/web.url.js"); + +require("core-js/modules/web.url.to-json.js"); + +require("core-js/modules/web.url-search-params.js"); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/input.js new file mode 100644 index 0000000000..389c27a6ca --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/input.js @@ -0,0 +1,3 @@ +require('@babel/polyfill'); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/options.json new file mode 100644 index 0000000000..fc08c03675 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/output.js new file mode 100644 index 0000000000..389c27a6ca --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/output.js @@ -0,0 +1,3 @@ +require('@babel/polyfill'); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/stderr.txt b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/stderr.txt new file mode 100644 index 0000000000..eaf553660f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-babel-polyfill/stderr.txt @@ -0,0 +1,2 @@ +`@babel/polyfill` is deprecated. Please, use required parts of `core-js` + and `regenerator-runtime/runtime` separately diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/input.js new file mode 100644 index 0000000000..521d4777d4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/input.js @@ -0,0 +1,4 @@ +require('core-js/es'); +require('regenerator-runtime/runtime'); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/output.js new file mode 100644 index 0000000000..f49e0c193f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-chrome-71/output.js @@ -0,0 +1,13 @@ +require("core-js/modules/es.array.reduce.js"); + +require("core-js/modules/es.array.reduce-right.js"); + +require("core-js/modules/es.array.unscopables.flat.js"); + +require("core-js/modules/es.array.unscopables.flat-map.js"); + +require("core-js/modules/es.math.hypot.js"); + +require("core-js/modules/es.object.from-entries.js"); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/input.js new file mode 100644 index 0000000000..4b7ac12b6a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/input.js @@ -0,0 +1,5 @@ +require('core-js/es'); +require('core-js/proposals'); +require('regenerator-runtime/runtime'); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/options.json new file mode 100644 index 0000000000..bc7cfa8eb2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/output.js new file mode 100644 index 0000000000..28c4e95d5f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require-es-proposals/output.js @@ -0,0 +1,219 @@ +require("core-js/modules/es.symbol.description.js"); + +require("core-js/modules/es.symbol.async-iterator.js"); + +require("core-js/modules/es.array.flat.js"); + +require("core-js/modules/es.array.flat-map.js"); + +require("core-js/modules/es.array.iterator.js"); + +require("core-js/modules/es.array.reduce.js"); + +require("core-js/modules/es.array.reduce-right.js"); + +require("core-js/modules/es.array.sort.js"); + +require("core-js/modules/es.array.unscopables.flat.js"); + +require("core-js/modules/es.array.unscopables.flat-map.js"); + +require("core-js/modules/es.math.hypot.js"); + +require("core-js/modules/es.object.define-getter.js"); + +require("core-js/modules/es.object.define-setter.js"); + +require("core-js/modules/es.object.from-entries.js"); + +require("core-js/modules/es.object.lookup-getter.js"); + +require("core-js/modules/es.object.lookup-setter.js"); + +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.promise.finally.js"); + +require("core-js/modules/es.string.pad-end.js"); + +require("core-js/modules/es.string.pad-start.js"); + +require("core-js/modules/es.string.replace.js"); + +require("core-js/modules/es.string.trim.js"); + +require("core-js/modules/es.string.trim-end.js"); + +require("core-js/modules/es.string.trim-start.js"); + +require("core-js/modules/esnext.aggregate-error.js"); + +require("core-js/modules/esnext.array.last-index.js"); + +require("core-js/modules/esnext.array.last-item.js"); + +require("core-js/modules/esnext.composite-key.js"); + +require("core-js/modules/esnext.composite-symbol.js"); + +require("core-js/modules/esnext.global-this.js"); + +require("core-js/modules/esnext.map.delete-all.js"); + +require("core-js/modules/esnext.map.every.js"); + +require("core-js/modules/esnext.map.filter.js"); + +require("core-js/modules/esnext.map.find.js"); + +require("core-js/modules/esnext.map.find-key.js"); + +require("core-js/modules/esnext.map.from.js"); + +require("core-js/modules/esnext.map.group-by.js"); + +require("core-js/modules/esnext.map.includes.js"); + +require("core-js/modules/esnext.map.key-by.js"); + +require("core-js/modules/esnext.map.key-of.js"); + +require("core-js/modules/esnext.map.map-keys.js"); + +require("core-js/modules/esnext.map.map-values.js"); + +require("core-js/modules/esnext.map.merge.js"); + +require("core-js/modules/esnext.map.of.js"); + +require("core-js/modules/esnext.map.reduce.js"); + +require("core-js/modules/esnext.map.some.js"); + +require("core-js/modules/esnext.map.update.js"); + +require("core-js/modules/esnext.math.clamp.js"); + +require("core-js/modules/esnext.math.deg-per-rad.js"); + +require("core-js/modules/esnext.math.degrees.js"); + +require("core-js/modules/esnext.math.fscale.js"); + +require("core-js/modules/esnext.math.iaddh.js"); + +require("core-js/modules/esnext.math.imulh.js"); + +require("core-js/modules/esnext.math.isubh.js"); + +require("core-js/modules/esnext.math.rad-per-deg.js"); + +require("core-js/modules/esnext.math.radians.js"); + +require("core-js/modules/esnext.math.scale.js"); + +require("core-js/modules/esnext.math.seeded-prng.js"); + +require("core-js/modules/esnext.math.signbit.js"); + +require("core-js/modules/esnext.math.umulh.js"); + +require("core-js/modules/esnext.number.from-string.js"); + +require("core-js/modules/esnext.observable.js"); + +require("core-js/modules/esnext.promise.all-settled.js"); + +require("core-js/modules/esnext.promise.any.js"); + +require("core-js/modules/esnext.promise.try.js"); + +require("core-js/modules/esnext.reflect.define-metadata.js"); + +require("core-js/modules/esnext.reflect.delete-metadata.js"); + +require("core-js/modules/esnext.reflect.get-metadata.js"); + +require("core-js/modules/esnext.reflect.get-metadata-keys.js"); + +require("core-js/modules/esnext.reflect.get-own-metadata.js"); + +require("core-js/modules/esnext.reflect.get-own-metadata-keys.js"); + +require("core-js/modules/esnext.reflect.has-metadata.js"); + +require("core-js/modules/esnext.reflect.has-own-metadata.js"); + +require("core-js/modules/esnext.reflect.metadata.js"); + +require("core-js/modules/esnext.set.add-all.js"); + +require("core-js/modules/esnext.set.delete-all.js"); + +require("core-js/modules/esnext.set.difference.js"); + +require("core-js/modules/esnext.set.every.js"); + +require("core-js/modules/esnext.set.filter.js"); + +require("core-js/modules/esnext.set.find.js"); + +require("core-js/modules/esnext.set.from.js"); + +require("core-js/modules/esnext.set.intersection.js"); + +require("core-js/modules/esnext.set.is-disjoint-from.js"); + +require("core-js/modules/esnext.set.is-subset-of.js"); + +require("core-js/modules/esnext.set.is-superset-of.js"); + +require("core-js/modules/esnext.set.join.js"); + +require("core-js/modules/esnext.set.map.js"); + +require("core-js/modules/esnext.set.of.js"); + +require("core-js/modules/esnext.set.reduce.js"); + +require("core-js/modules/esnext.set.some.js"); + +require("core-js/modules/esnext.set.symmetric-difference.js"); + +require("core-js/modules/esnext.set.union.js"); + +require("core-js/modules/esnext.string.at.js"); + +require("core-js/modules/esnext.string.code-points.js"); + +require("core-js/modules/esnext.string.match-all.js"); + +require("core-js/modules/esnext.string.replace-all.js"); + +require("core-js/modules/esnext.symbol.dispose.js"); + +require("core-js/modules/esnext.symbol.observable.js"); + +require("core-js/modules/esnext.symbol.pattern-match.js"); + +require("core-js/modules/esnext.weak-map.delete-all.js"); + +require("core-js/modules/esnext.weak-map.from.js"); + +require("core-js/modules/esnext.weak-map.of.js"); + +require("core-js/modules/esnext.weak-set.add-all.js"); + +require("core-js/modules/esnext.weak-set.delete-all.js"); + +require("core-js/modules/esnext.weak-set.from.js"); + +require("core-js/modules/esnext.weak-set.of.js"); + +require("core-js/modules/web.url.js"); + +require("core-js/modules/web.url.to-json.js"); + +require("core-js/modules/web.url-search-params.js"); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/input.js new file mode 100644 index 0000000000..476fb940dd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/input.js @@ -0,0 +1,4 @@ +require('core-js/stable'); +require('regenerator-runtime/runtime'); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/options.json new file mode 100644 index 0000000000..bc7cfa8eb2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/output.js new file mode 100644 index 0000000000..b5b37a2eb6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-require/output.js @@ -0,0 +1,63 @@ +require("core-js/modules/es.symbol.description.js"); + +require("core-js/modules/es.symbol.async-iterator.js"); + +require("core-js/modules/es.array.flat.js"); + +require("core-js/modules/es.array.flat-map.js"); + +require("core-js/modules/es.array.iterator.js"); + +require("core-js/modules/es.array.reduce.js"); + +require("core-js/modules/es.array.reduce-right.js"); + +require("core-js/modules/es.array.sort.js"); + +require("core-js/modules/es.array.unscopables.flat.js"); + +require("core-js/modules/es.array.unscopables.flat-map.js"); + +require("core-js/modules/es.math.hypot.js"); + +require("core-js/modules/es.object.define-getter.js"); + +require("core-js/modules/es.object.define-setter.js"); + +require("core-js/modules/es.object.from-entries.js"); + +require("core-js/modules/es.object.lookup-getter.js"); + +require("core-js/modules/es.object.lookup-setter.js"); + +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.promise.finally.js"); + +require("core-js/modules/es.string.pad-end.js"); + +require("core-js/modules/es.string.pad-start.js"); + +require("core-js/modules/es.string.replace.js"); + +require("core-js/modules/es.string.trim.js"); + +require("core-js/modules/es.string.trim-end.js"); + +require("core-js/modules/es.string.trim-start.js"); + +require("core-js/modules/web.dom-collections.for-each.js"); + +require("core-js/modules/web.dom-collections.iterator.js"); + +require("core-js/modules/web.immediate.js"); + +require("core-js/modules/web.queue-microtask.js"); + +require("core-js/modules/web.url.js"); + +require("core-js/modules/web.url.to-json.js"); + +require("core-js/modules/web.url-search-params.js"); + +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/input.mjs new file mode 100644 index 0000000000..eb1b8b061a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/input.mjs @@ -0,0 +1,2 @@ +import { fromEntries } from 'core-js/es/object'; +const reflect = require('core-js/features/reflect'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/output.mjs new file mode 100644 index 0000000000..0119f0da2e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-specified-imports/output.mjs @@ -0,0 +1,3 @@ +import { fromEntries } from 'core-js/es/object'; + +var reflect = require('core-js/features/reflect'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/options.json new file mode 100644 index 0000000000..b8ee30edfe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "71" + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/output.mjs new file mode 100644 index 0000000000..038607e44a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-chrome-71/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/web.immediate.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/options.json new file mode 100644 index 0000000000..7d03dc896b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "targets": { + "samsung": "8.2" + }, + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/output.mjs new file mode 100644 index 0000000000..95f4ae8574 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable-samsung-8.2/output.mjs @@ -0,0 +1,21 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/options.json new file mode 100644 index 0000000000..fe930890ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/output.mjs new file mode 100644 index 0000000000..0b2a038c3a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/entry-stable/output.mjs @@ -0,0 +1,209 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.is-concat-spreadable.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-primitive.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.symbol.unscopables.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.array.every.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.array.find-index.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.for-each.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.index-of.js"; +import "core-js/modules/es.array.is-array.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.join.js"; +import "core-js/modules/es.array.last-index-of.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.reverse.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.some.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.array-buffer.constructor.js"; +import "core-js/modules/es.array-buffer.is-view.js"; +import "core-js/modules/es.array-buffer.slice.js"; +import "core-js/modules/es.data-view.js"; +import "core-js/modules/es.date.now.js"; +import "core-js/modules/es.date.to-iso-string.js"; +import "core-js/modules/es.date.to-json.js"; +import "core-js/modules/es.date.to-primitive.js"; +import "core-js/modules/es.date.to-string.js"; +import "core-js/modules/es.function.bind.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.function.name.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.asinh.js"; +import "core-js/modules/es.math.atanh.js"; +import "core-js/modules/es.math.cbrt.js"; +import "core-js/modules/es.math.clz32.js"; +import "core-js/modules/es.math.cosh.js"; +import "core-js/modules/es.math.expm1.js"; +import "core-js/modules/es.math.fround.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.imul.js"; +import "core-js/modules/es.math.log10.js"; +import "core-js/modules/es.math.log1p.js"; +import "core-js/modules/es.math.log2.js"; +import "core-js/modules/es.math.sign.js"; +import "core-js/modules/es.math.sinh.js"; +import "core-js/modules/es.math.tanh.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.math.trunc.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.epsilon.js"; +import "core-js/modules/es.number.is-finite.js"; +import "core-js/modules/es.number.is-integer.js"; +import "core-js/modules/es.number.is-nan.js"; +import "core-js/modules/es.number.is-safe-integer.js"; +import "core-js/modules/es.number.max-safe-integer.js"; +import "core-js/modules/es.number.min-safe-integer.js"; +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.parse-int.js"; +import "core-js/modules/es.number.to-fixed.js"; +import "core-js/modules/es.number.to-precision.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.create.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-properties.js"; +import "core-js/modules/es.object.define-property.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.set-prototype-of.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.parse-float.js"; +import "core-js/modules/es.parse-int.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.from-code-point.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.raw.js"; +import "core-js/modules/es.string.repeat.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.string.anchor.js"; +import "core-js/modules/es.string.big.js"; +import "core-js/modules/es.string.blink.js"; +import "core-js/modules/es.string.bold.js"; +import "core-js/modules/es.string.fixed.js"; +import "core-js/modules/es.string.fontcolor.js"; +import "core-js/modules/es.string.fontsize.js"; +import "core-js/modules/es.string.italics.js"; +import "core-js/modules/es.string.link.js"; +import "core-js/modules/es.string.small.js"; +import "core-js/modules/es.string.strike.js"; +import "core-js/modules/es.string.sub.js"; +import "core-js/modules/es.string.sup.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/options.json new file mode 100644 index 0000000000..c762d11f09 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/options.json @@ -0,0 +1,22 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 63 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3, + "exclude": [ + "es.string.pad-start", + "es.string.pad-end", + "web.timers", + "web.immediate", + "web.dom-collections.iterator" + ] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/output.mjs new file mode 100644 index 0000000000..7860022708 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-built-ins/output.mjs @@ -0,0 +1,19 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/input.mjs new file mode 100644 index 0000000000..efe0d2ee2c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/input.mjs @@ -0,0 +1,8 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; + +async function a() { + await 1; +} + +(() => {}) diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/options.json new file mode 100644 index 0000000000..d41e694ad4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/options.json @@ -0,0 +1,21 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3, + "exclude": [ + "transform-async-to-generator", + "transform-regenerator", + "es.string.pad-start" + ], + "include": ["transform-arrow-functions", "es.map"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/output.mjs new file mode 100644 index 0000000000..dd891fb4d3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-include/output.mjs @@ -0,0 +1,37 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; + +async function a() { + await 1; +} + +(function () {}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/options.json new file mode 100644 index 0000000000..1685773312 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/options.json @@ -0,0 +1,14 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "entry", + "targets": { "browsers": "ie 6" }, + "corejs": 3, + "exclude": ["transform-regenerator"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/output.mjs new file mode 100644 index 0000000000..974c6b0808 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude-regenerator/output.mjs @@ -0,0 +1,207 @@ +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.symbol.has-instance.js"; +import "core-js/modules/es.symbol.is-concat-spreadable.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.symbol.replace.js"; +import "core-js/modules/es.symbol.search.js"; +import "core-js/modules/es.symbol.species.js"; +import "core-js/modules/es.symbol.split.js"; +import "core-js/modules/es.symbol.to-primitive.js"; +import "core-js/modules/es.symbol.to-string-tag.js"; +import "core-js/modules/es.symbol.unscopables.js"; +import "core-js/modules/es.array.concat.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.array.every.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.array.find-index.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.for-each.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.index-of.js"; +import "core-js/modules/es.array.is-array.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.join.js"; +import "core-js/modules/es.array.last-index-of.js"; +import "core-js/modules/es.array.map.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.slice.js"; +import "core-js/modules/es.array.some.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.species.js"; +import "core-js/modules/es.array.splice.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.array-buffer.constructor.js"; +import "core-js/modules/es.array-buffer.is-view.js"; +import "core-js/modules/es.array-buffer.slice.js"; +import "core-js/modules/es.data-view.js"; +import "core-js/modules/es.date.now.js"; +import "core-js/modules/es.date.to-iso-string.js"; +import "core-js/modules/es.date.to-json.js"; +import "core-js/modules/es.date.to-primitive.js"; +import "core-js/modules/es.date.to-string.js"; +import "core-js/modules/es.function.bind.js"; +import "core-js/modules/es.function.has-instance.js"; +import "core-js/modules/es.function.name.js"; +import "core-js/modules/es.json.to-string-tag.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.acosh.js"; +import "core-js/modules/es.math.asinh.js"; +import "core-js/modules/es.math.atanh.js"; +import "core-js/modules/es.math.cbrt.js"; +import "core-js/modules/es.math.clz32.js"; +import "core-js/modules/es.math.cosh.js"; +import "core-js/modules/es.math.expm1.js"; +import "core-js/modules/es.math.fround.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.math.imul.js"; +import "core-js/modules/es.math.log10.js"; +import "core-js/modules/es.math.log1p.js"; +import "core-js/modules/es.math.log2.js"; +import "core-js/modules/es.math.sign.js"; +import "core-js/modules/es.math.sinh.js"; +import "core-js/modules/es.math.tanh.js"; +import "core-js/modules/es.math.to-string-tag.js"; +import "core-js/modules/es.math.trunc.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.epsilon.js"; +import "core-js/modules/es.number.is-finite.js"; +import "core-js/modules/es.number.is-integer.js"; +import "core-js/modules/es.number.is-nan.js"; +import "core-js/modules/es.number.is-safe-integer.js"; +import "core-js/modules/es.number.max-safe-integer.js"; +import "core-js/modules/es.number.min-safe-integer.js"; +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.parse-int.js"; +import "core-js/modules/es.number.to-fixed.js"; +import "core-js/modules/es.number.to-precision.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.create.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-properties.js"; +import "core-js/modules/es.object.define-property.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.freeze.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.get-own-property-descriptor.js"; +import "core-js/modules/es.object.get-own-property-descriptors.js"; +import "core-js/modules/es.object.get-own-property-names.js"; +import "core-js/modules/es.object.get-prototype-of.js"; +import "core-js/modules/es.object.is.js"; +import "core-js/modules/es.object.is-extensible.js"; +import "core-js/modules/es.object.is-frozen.js"; +import "core-js/modules/es.object.is-sealed.js"; +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.object.prevent-extensions.js"; +import "core-js/modules/es.object.seal.js"; +import "core-js/modules/es.object.set-prototype-of.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.parse-float.js"; +import "core-js/modules/es.parse-int.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.reflect.apply.js"; +import "core-js/modules/es.reflect.construct.js"; +import "core-js/modules/es.reflect.define-property.js"; +import "core-js/modules/es.reflect.delete-property.js"; +import "core-js/modules/es.reflect.get.js"; +import "core-js/modules/es.reflect.get-own-property-descriptor.js"; +import "core-js/modules/es.reflect.get-prototype-of.js"; +import "core-js/modules/es.reflect.has.js"; +import "core-js/modules/es.reflect.is-extensible.js"; +import "core-js/modules/es.reflect.own-keys.js"; +import "core-js/modules/es.reflect.prevent-extensions.js"; +import "core-js/modules/es.reflect.set.js"; +import "core-js/modules/es.reflect.set-prototype-of.js"; +import "core-js/modules/es.regexp.constructor.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.string.from-code-point.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.raw.js"; +import "core-js/modules/es.string.repeat.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.string.split.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/es.string.anchor.js"; +import "core-js/modules/es.string.big.js"; +import "core-js/modules/es.string.blink.js"; +import "core-js/modules/es.string.bold.js"; +import "core-js/modules/es.string.fixed.js"; +import "core-js/modules/es.string.fontcolor.js"; +import "core-js/modules/es.string.fontsize.js"; +import "core-js/modules/es.string.italics.js"; +import "core-js/modules/es.string.link.js"; +import "core-js/modules/es.string.small.js"; +import "core-js/modules/es.string.strike.js"; +import "core-js/modules/es.string.sub.js"; +import "core-js/modules/es.string.sup.js"; +import "core-js/modules/es.typed-array.float32-array.js"; +import "core-js/modules/es.typed-array.float64-array.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.int16-array.js"; +import "core-js/modules/es.typed-array.int32-array.js"; +import "core-js/modules/es.typed-array.uint8-array.js"; +import "core-js/modules/es.typed-array.uint8-clamped-array.js"; +import "core-js/modules/es.typed-array.uint16-array.js"; +import "core-js/modules/es.typed-array.uint32-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.from.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.weak-map.js"; +import "core-js/modules/es.weak-set.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/input.mjs new file mode 100644 index 0000000000..c70b44b5a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/input.mjs @@ -0,0 +1,3 @@ +async function a() { + await 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/options.json new file mode 100644 index 0000000000..f6c98a7a33 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "usage", + "corejs": 3, + "exclude": ["transform-async-to-generator", "transform-regenerator"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/output.mjs new file mode 100644 index 0000000000..b5b79bde05 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/exclude/output.mjs @@ -0,0 +1,6 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; + +async function a() { + await 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/input.mjs new file mode 100644 index 0000000000..aaf258d9cf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; + +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/options.json new file mode 100644 index 0000000000..4dcf6b59d7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "modules": false, + "useBuiltIns": "entry", + "corejs": 3, + "forceAllTransforms": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/output.mjs new file mode 100644 index 0000000000..2dd7a23b13 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/force-all-transforms/output.mjs @@ -0,0 +1,33 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; +import 'regenerator-runtime/runtime'; +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/options.json new file mode 100644 index 0000000000..b36c014817 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 55 + }, + "include": ["es.map", "es.set"], + "modules": false, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/output.mjs new file mode 100644 index 0000000000..59680c2221 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/include-built-ins/output.mjs @@ -0,0 +1,33 @@ +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.async-iterator.js"; +import "core-js/modules/es.array.flat.js"; +import "core-js/modules/es.array.flat-map.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array.reduce.js"; +import "core-js/modules/es.array.reduce-right.js"; +import "core-js/modules/es.array.sort.js"; +import "core-js/modules/es.array.unscopables.flat.js"; +import "core-js/modules/es.array.unscopables.flat-map.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.math.hypot.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.object.define-setter.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.object.lookup-getter.js"; +import "core-js/modules/es.object.lookup-setter.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.promise.finally.js"; +import "core-js/modules/es.set.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.string.trim-end.js"; +import "core-js/modules/es.string.trim-start.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/web.immediate.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/web.url.js"; +import "core-js/modules/web.url.to-json.js"; +import "core-js/modules/web.url-search-params.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/options.json new file mode 100644 index 0000000000..b3ff79dc80 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/options.json @@ -0,0 +1,4 @@ +{ + "externalHelpers": false, + "BABEL_8_BREAKING": false +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/input.mjs new file mode 100644 index 0000000000..39641419b1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/input.mjs @@ -0,0 +1,26 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression +_arr[Symbol.iterator](); // Symbol.iterator + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { var blah = new WeakMap(); } // shadowed + +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/options.json new file mode 100644 index 0000000000..09d412d001 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { + "chrome": "71" + }, + "corejs": { "version": 3, "proposals": true }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/output.mjs new file mode 100644 index 0000000000..38f7fe2792 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals-chrome-71/output.mjs @@ -0,0 +1,50 @@ +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.symbol.observable.js"; +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression + +_arr[Symbol.iterator](); // Symbol.iterator +// no import + + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed + + +const foo = new Promise(resolve => { + resolve(new Map()); +}); +queueMicrotask(() => globalThis); +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/input.mjs new file mode 100644 index 0000000000..39641419b1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/input.mjs @@ -0,0 +1,26 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression +_arr[Symbol.iterator](); // Symbol.iterator + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { var blah = new WeakMap(); } // shadowed + +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/options.json new file mode 100644 index 0000000000..5a0b22a7dd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": { "version": 3, "proposals": true }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/output.mjs new file mode 100644 index 0000000000..66c4c42edc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all-proposals/output.mjs @@ -0,0 +1,67 @@ +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/esnext.map.delete-all.js"; +import "core-js/modules/esnext.map.every.js"; +import "core-js/modules/esnext.map.filter.js"; +import "core-js/modules/esnext.map.find.js"; +import "core-js/modules/esnext.map.find-key.js"; +import "core-js/modules/esnext.map.includes.js"; +import "core-js/modules/esnext.map.key-of.js"; +import "core-js/modules/esnext.map.map-keys.js"; +import "core-js/modules/esnext.map.map-values.js"; +import "core-js/modules/esnext.map.merge.js"; +import "core-js/modules/esnext.map.reduce.js"; +import "core-js/modules/esnext.map.some.js"; +import "core-js/modules/esnext.map.update.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/esnext.global-this.js"; +import "core-js/modules/esnext.observable.js"; +import "core-js/modules/esnext.symbol.observable.js"; +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression + +_arr[Symbol.iterator](); // Symbol.iterator +// no import + + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed + + +var foo = new Promise(function (resolve) { + resolve(new Map()); +}); +queueMicrotask(function () { + return globalThis; +}); +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/input.mjs new file mode 100644 index 0000000000..79e759ec82 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/input.mjs @@ -0,0 +1,29 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression +_arr[Symbol.iterator](); // Symbol.iterator + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { var blah = new WeakMap(); } // shadowed + +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); + +Promise.allSettled([]); +S.matchAll(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/options.json new file mode 100644 index 0000000000..ba576bd3a8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": "3.6", + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/output.mjs new file mode 100644 index 0000000000..8053d3b502 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-all/output.mjs @@ -0,0 +1,56 @@ +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.symbol.match.js"; +import "core-js/modules/es.string.match.js"; +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/web.queue-microtask.js"; +import "core-js/modules/es.global-this.js"; +import "core-js/modules/es.promise.all-settled.js"; +import "core-js/modules/es.string.match-all.js"; +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression + +_arr[Symbol.iterator](); // Symbol.iterator +// no import + + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed + + +var foo = new Promise(function (resolve) { + resolve(new Map()); +}); +queueMicrotask(function () { + return globalThis; +}); +Observable.from(10); +Promise.allSettled([]); +S.matchAll(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/browserslist b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/browserslist new file mode 100644 index 0000000000..d0ae78fe6a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/browserslist @@ -0,0 +1 @@ +chrome 55 diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/input.mjs new file mode 100644 index 0000000000..f9e8d5a956 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/input.mjs @@ -0,0 +1 @@ +const a = new Map(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/options.json new file mode 100644 index 0000000000..ffb21b1f8a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "presets": [ + [ + "../../../../lib", + { + "configPath": "../fixtures/preset-options-add-used-built-ins/browserslist-config-ignore", + "modules": false, + "targets": { "esmodules": true }, + "useBuiltIns": "usage", + "corejs": 3, + "debug": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/output.mjs new file mode 100644 index 0000000000..38658887bc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +var a = new Map(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt new file mode 100644 index 0000000000..a04593945d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt @@ -0,0 +1,57 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "61", + "chrome": "61", + "edge": "16", + "firefox": "60", + "ios": "10.3", + "node": "13.2", + "opera": "48", + "safari": "10.1", + "samsung": "8.2" +} + +Using modules transform: false + +Using plugins: + proposal-numeric-separator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-logical-assignment-operators { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-nullish-coalescing-operator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-optional-chaining { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-json-strings { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + proposal-optional-catch-binding { "android":"61", "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + transform-parameters { "edge":"16" } + proposal-async-generator-functions { "android":"61", "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1" } + proposal-object-rest-spread { "edge":"16", "ios":"10.3", "safari":"10.1" } + transform-dotall-regex { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" } + proposal-unicode-property-regex { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + transform-named-capturing-groups-regex { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + transform-async-to-generator { "ios":"10.3", "safari":"10.1" } + transform-template-literals { "ios":"10.3", "safari":"10.1" } + transform-function-name { "edge":"16" } + transform-unicode-regex { "ios":"10.3", "safari":"10.1" } + transform-block-scoping { "ios":"10.3", "safari":"10.1" } + proposal-export-namespace-from { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1", "samsung":"8.2" } + syntax-dynamic-import { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } +corejs3: `DEBUG` option + +Using targets: { + "android": "61", + "chrome": "61", + "edge": "16", + "firefox": "60", + "ios": "10.3", + "node": "13.2", + "opera": "48", + "safari": "10.1", + "samsung": "8.2" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/input.mjs] +The corejs3 polyfill added the following polyfills: + es.array.iterator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } + web.dom-collections.iterator { "android":"61", "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "node":"13.2", "opera":"48", "safari":"10.1", "samsung":"8.2" } diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/input.mjs new file mode 100644 index 0000000000..725315824b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/input.mjs @@ -0,0 +1,2 @@ +const Set = window.Set; +const Map = something.Map; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/output.mjs new file mode 100644 index 0000000000..c2b70f84da --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-built-in-from-global-object/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.set.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +var Set = window.Set; +var Map = something.Map; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/input.mjs new file mode 100644 index 0000000000..bf62d9f751 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/input.mjs @@ -0,0 +1 @@ +[a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/options.json new file mode 100644 index 0000000000..66007aa56a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/output.mjs new file mode 100644 index 0000000000..a41346aaec --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-assignment/output.mjs @@ -0,0 +1,4 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +[a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/input.mjs new file mode 100644 index 0000000000..cb50832b47 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/input.mjs @@ -0,0 +1,3 @@ +try { + a(); +} catch([b, c]) { } diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/options.json new file mode 100644 index 0000000000..66007aa56a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/output.mjs new file mode 100644 index 0000000000..9d6829e2dd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-catch/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; + +try { + a(); +} catch ([b, c]) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/input.mjs new file mode 100644 index 0000000000..027d407b5e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/input.mjs @@ -0,0 +1 @@ +for (let [a, b] in c); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/options.json new file mode 100644 index 0000000000..66007aa56a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/output.mjs new file mode 100644 index 0000000000..21546c1ef8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-for-x/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; + +for (var [a, b] in c) { + ; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/input.mjs new file mode 100644 index 0000000000..6cb372d8a2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/input.mjs @@ -0,0 +1,5 @@ +!function (foo, { entries }) {} ({}, Object); + +new function (foo, { from }) {} ({}, Array); + +(({ includes }) => { })('42'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/options.json new file mode 100644 index 0000000000..70fc29a6de --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-destructuring", "transform-parameters"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/output.mjs new file mode 100644 index 0000000000..12cc00ab39 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-iife/output.mjs @@ -0,0 +1,14 @@ +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.string.includes.js"; +!function (foo, { + entries: entries +}) {}({}, Object); +new function (foo, { + from: from +}) {}({}, Array); + +(function ({ + includes: includes +}) {})('42'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/input.mjs new file mode 100644 index 0000000000..0b8c72fe4c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/input.mjs @@ -0,0 +1 @@ +function a([b, c]) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/options.json new file mode 100644 index 0000000000..66007aa56a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/output.mjs new file mode 100644 index 0000000000..e4c1de02f3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-params/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; + +function a(_ref) { + var [b, c] = _ref; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/input.mjs new file mode 100644 index 0000000000..e68aeb23a8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/input.mjs @@ -0,0 +1 @@ +const [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/options.json new file mode 100644 index 0000000000..66007aa56a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/output.mjs new file mode 100644 index 0000000000..da008c84d9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-destructuring-variable-declaration/output.mjs @@ -0,0 +1,4 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +var [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/input.mjs new file mode 100644 index 0000000000..5c8f80cf47 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/input.mjs @@ -0,0 +1,17 @@ +var a = []; + +a.values(); + +''.replace() + +''.includes(); + +/./gi.flags; + +''.indexOf(); + +a.__defineGetter__('foo', () => 42); + +a.trim; + +Function.bind; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/options.json new file mode 100644 index 0000000000..93c96f3dfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/output.mjs new file mode 100644 index 0000000000..b74866ca8b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-determanated-instance-methods/output.mjs @@ -0,0 +1,21 @@ +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.regexp.flags.js"; +import "core-js/modules/es.object.define-getter.js"; +import "core-js/modules/es.function.bind.js"; +var a = []; +a.values(); +''.replace(); +''.includes(); +/./gi.flags; +''.indexOf(); + +a.__defineGetter__('foo', function () { + return 42; +}); + +a.trim; +Function.bind; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/input.mjs new file mode 100644 index 0000000000..7ebcdb5d17 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/input.mjs @@ -0,0 +1 @@ +const foo = import('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/options.json new file mode 100644 index 0000000000..eb821662bc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { + "chrome": "71" + }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/output.mjs new file mode 100644 index 0000000000..7ebcdb5d17 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import-chrome-71/output.mjs @@ -0,0 +1 @@ +const foo = import('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/input.mjs new file mode 100644 index 0000000000..7ebcdb5d17 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/input.mjs @@ -0,0 +1 @@ +const foo = import('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/output.mjs new file mode 100644 index 0000000000..70fa4a5beb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-dynamic-import/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; +var foo = import('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/input.mjs new file mode 100644 index 0000000000..c12f5e3a8a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/input.mjs @@ -0,0 +1,12 @@ +var objectClass = Object; +var arrayInstance = []; +var assignStr = "assign"; +var entriesStr = "entries"; +var valuesStr = "values"; +var inclidesStr = "includes"; +var findStr = "find"; + +// Allow static methods be assigned to variables only directly in the module. +externalVar[valuesStr]; // don't include +objectClass[assignStr]({}); // include +arrayInstance[entriesStr]({}); // don't include diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/output.mjs new file mode 100644 index 0000000000..47128eda8b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-class-methods/output.mjs @@ -0,0 +1,17 @@ +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.object.assign.js"; +var objectClass = Object; +var arrayInstance = []; +var assignStr = "assign"; +var entriesStr = "entries"; +var valuesStr = "values"; +var inclidesStr = "includes"; +var findStr = "find"; // Allow static methods be assigned to variables only directly in the module. + +externalVar[valuesStr]; // don't include + +objectClass[assignStr]({}); // include + +arrayInstance[entriesStr]({}); // don't include diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/input.mjs new file mode 100644 index 0000000000..369046bb15 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/input.mjs @@ -0,0 +1,8 @@ +var arrayInstance = []; +var inclidesStr = "includes"; +var findStr = "find"; + +// Allow instance methods be assigned to variables. +arrayInstance[inclidesStr](); // include +externalVar[findStr]; // include + diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/output.mjs new file mode 100644 index 0000000000..28a71c4b6d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-evaluated-instance-methods/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.array.find.js"; +var arrayInstance = []; +var inclidesStr = "includes"; +var findStr = "find"; // Allow instance methods be assigned to variables. + +arrayInstance[inclidesStr](); // include + +externalVar[findStr]; // include diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/input.mjs new file mode 100644 index 0000000000..4f8bca34cb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/input.mjs @@ -0,0 +1 @@ +const foo = fetch('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/options.json new file mode 100644 index 0000000000..eb821662bc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { + "chrome": "71" + }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/output.mjs new file mode 100644 index 0000000000..4f8bca34cb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch-chrome-71/output.mjs @@ -0,0 +1 @@ +const foo = fetch('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/input.mjs new file mode 100644 index 0000000000..4f8bca34cb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/input.mjs @@ -0,0 +1 @@ +const foo = fetch('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/output.mjs new file mode 100644 index 0000000000..f2c03aa824 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-fetch/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; +var foo = fetch('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/input.mjs new file mode 100644 index 0000000000..c9f54a8e47 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/input.mjs @@ -0,0 +1,3 @@ +for (const { padStart } of foo) { + console.log('b'.padEnd(5)); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/options.json new file mode 100644 index 0000000000..28ad6bb35e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "7" + }, + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/output.mjs new file mode 100644 index 0000000000..1bd2868bae --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-with/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.pad-end.js"; + +for (const { + padStart +} of foo) { + console.log('b'.padEnd(5)); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/input.mjs new file mode 100644 index 0000000000..4228bde23c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/input.mjs @@ -0,0 +1,3 @@ +for (const { a } of foo) { + console.log(a); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/options.json new file mode 100644 index 0000000000..e31b22a885 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "11" + }, + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/output.mjs new file mode 100644 index 0000000000..9b8c02b13b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of-destructure-without/output.mjs @@ -0,0 +1,5 @@ +for (const { + a +} of foo) { + console.log(a); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/input.mjs new file mode 100644 index 0000000000..9f6660a25f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/input.mjs @@ -0,0 +1 @@ +for (let a of b); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/options.json new file mode 100644 index 0000000000..97f8881a33 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-for-of"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/output.mjs new file mode 100644 index 0000000000..4d28fbc40f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-for-of/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; + +for (var a of b) { + ; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/input.mjs new file mode 100644 index 0000000000..1f6eeef40d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/input.mjs @@ -0,0 +1,7 @@ +'entries' in Object; +'includes' in [1, 2, 3]; + +('va' + 'lues') in Object; + +var keys = 'fromEntries'; +keys in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/output.mjs new file mode 100644 index 0000000000..7b400eef7b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-in/output.mjs @@ -0,0 +1,10 @@ +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.object.values.js"; +import "core-js/modules/es.object.from-entries.js"; +import "core-js/modules/es.array.iterator.js"; +'entries' in Object; +'includes' in [1, 2, 3]; +'va' + 'lues' in Object; +var keys = 'fromEntries'; +keys in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/input.mjs new file mode 100644 index 0000000000..35cd0f9960 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/input.mjs @@ -0,0 +1,12 @@ +Array.from; // static function +Map; // top level built-in + +// instance methods may have false positives (which is ok) +a.includes(); // method call +b['find'] // computed string? +c.prototype.findIndex(); // .prototype +d.fill.bind(); //.bind +e.padStart.apply(); // .apply +f.padEnd.call(); // .call +String.prototype.startsWith.call; // prototype.call +var { codePointAt, endsWith } = k; // destructuring diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/options.json new file mode 100644 index 0000000000..d868cc145b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "targets": { + "chrome": 71 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/output.mjs new file mode 100644 index 0000000000..9ee8bd8b5a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods-native-support/output.mjs @@ -0,0 +1,23 @@ +Array.from; // static function + +Map; // top level built-in +// instance methods may have false positives (which is ok) + +a.includes(); // method call + +b['find']; // computed string? + +c.prototype.findIndex(); // .prototype + +d.fill.bind(); //.bind + +e.padStart.apply(); // .apply + +f.padEnd.call(); // .call + +String.prototype.startsWith.call; // prototype.call + +var { + codePointAt, + endsWith +} = k; // destructuring diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/input.mjs new file mode 100644 index 0000000000..4528eff880 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/input.mjs @@ -0,0 +1,20 @@ +Array.from; // static function +Map; // top level built-in + +// instance methods may have false positives (which is ok) +a.includes(); // method call +b['find'] // computed string? +c.prototype.findIndex(); // .prototype +d.fill.bind(); //.bind +e.padStart.apply(); // .apply +f.padEnd.call(); // .call +String.prototype.startsWith.call; // prototype.call +var { codePointAt, endsWith } = k; // destructuring + +var asdf = "copyWithin"; +var asdf2 = "split"; +var asdf3 = "re" + "place"; +i[asdf]; // computed with identifier +j[`search`]; // computed with template +k[asdf3] // computed with concat strings +var { [asdf2]: _a } = k; // computed diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/options.json new file mode 100644 index 0000000000..93c96f3dfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/output.mjs new file mode 100644 index 0000000000..b1993d019e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-instance-methods/output.mjs @@ -0,0 +1,55 @@ +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.map.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.array.includes.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.array.find.js"; +import "core-js/modules/es.function.bind.js"; +import "core-js/modules/es.array.fill.js"; +import "core-js/modules/es.string.pad-start.js"; +import "core-js/modules/es.string.pad-end.js"; +import "core-js/modules/es.string.starts-with.js"; +import "core-js/modules/es.string.code-point-at.js"; +import "core-js/modules/es.string.ends-with.js"; +import "core-js/modules/es.array.copy-within.js"; +import "core-js/modules/es.string.search.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.string.replace.js"; +import "core-js/modules/es.string.split.js"; +Array.from; // static function + +Map; // top level built-in +// instance methods may have false positives (which is ok) + +a.includes(); // method call + +b['find']; // computed string? + +c.prototype.findIndex(); // .prototype + +d.fill.bind(); //.bind + +e.padStart.apply(); // .apply + +f.padEnd.call(); // .call + +String.prototype.startsWith.call; // prototype.call + +var _k = k, + codePointAt = _k.codePointAt, + endsWith = _k.endsWith; // destructuring + +var asdf = "copyWithin"; +var asdf2 = "split"; +var asdf3 = "re" + "place"; +i[asdf]; // computed with identifier + +j["search"]; // computed with template + +k[asdf3]; // computed with concat strings + +var _k2 = k, + _a = _k2[asdf2]; // computed diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/input.mjs new file mode 100644 index 0000000000..3f57abb605 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/input.mjs @@ -0,0 +1,2 @@ +import * as ns from "ns"; +ns.map; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/options.json new file mode 100644 index 0000000000..d15a6c1c28 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/output.mjs new file mode 100644 index 0000000000..3f57abb605 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-namespaced/output.mjs @@ -0,0 +1,2 @@ +import * as ns from "ns"; +ns.map; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/input.mjs new file mode 100644 index 0000000000..a2b81d72e3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/input.mjs @@ -0,0 +1 @@ +Promise; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/options.json new file mode 100644 index 0000000000..949ccc15e2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/output.js new file mode 100644 index 0000000000..c6b6028f2f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-modules-transform/output.js @@ -0,0 +1,7 @@ +"use strict"; + +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.object.to-string.js"); + +Promise; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/input.mjs new file mode 100644 index 0000000000..4d789721e6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/input.mjs @@ -0,0 +1,33 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed + +// not covered by this plugin +var asdf = 'copyWithin'; +i[asdf]; // computed with identifier +j[`copyWithin`]; // computed with template +var { [asdf]: _a } = k; // computed + +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/options.json new file mode 100644 index 0000000000..d868cc145b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "targets": { + "chrome": 71 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/output.mjs new file mode 100644 index 0000000000..271ffd3320 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-native-support/output.mjs @@ -0,0 +1,42 @@ +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression +// no import + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed +// not covered by this plugin + + +var asdf = 'copyWithin'; +i[asdf]; // computed with identifier + +j[`copyWithin`]; // computed with template + +var { + [asdf]: _a +} = k; // computed + +const foo = new Promise(resolve => { + resolve(new Map()); +}); +queueMicrotask(() => globalThis); +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/input.mjs new file mode 100644 index 0000000000..f688910ec0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/input.mjs @@ -0,0 +1 @@ +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/output.mjs new file mode 100644 index 0000000000..f688910ec0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-builtins/output.mjs @@ -0,0 +1 @@ +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/input.mjs new file mode 100644 index 0000000000..31f2d79f9a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/input.mjs @@ -0,0 +1,2 @@ +import "not-core-js"; +import "not-babel-polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/options.json new file mode 100644 index 0000000000..e5c382aadc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/output.mjs new file mode 100644 index 0000000000..31f2d79f9a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-no-transform/output.mjs @@ -0,0 +1,2 @@ +import "not-core-js"; +import "not-babel-polyfill"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/input.mjs new file mode 100644 index 0000000000..f71c85f35e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/input.mjs @@ -0,0 +1,2 @@ +Number.parseFloat("3.14"); +Number.parseInt("10"); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/options.json new file mode 100644 index 0000000000..a8516537b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "ie": "11" + }, + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/output.mjs new file mode 100644 index 0000000000..8bfc8e575e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-number-ie-11/output.mjs @@ -0,0 +1,5 @@ +import "core-js/modules/es.number.parse-float.js"; +import "core-js/modules/es.number.constructor.js"; +import "core-js/modules/es.number.parse-int.js"; +Number.parseFloat("3.14"); +Number.parseInt("10"); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/input.mjs new file mode 100644 index 0000000000..f7bfa87674 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/input.mjs @@ -0,0 +1 @@ +function test({ ...others }) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/options.json new file mode 100644 index 0000000000..3e006cec63 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "targets": { "node": "8.10.0" } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/output.js new file mode 100644 index 0000000000..dccc8f3dbd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring-with-rest/output.js @@ -0,0 +1,4 @@ +"use strict"; + +function test({ ...others +}) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/input.mjs new file mode 100644 index 0000000000..33e982c475 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/input.mjs @@ -0,0 +1,23 @@ +var bind, toString; + +var { bind } = Function; + +var { entries } = Object; + +({ toString } = Math); + +const [{ exec }] = something; + +const { 'trim': foo } = '1'; + +const { foo: { filter } } = { foo: [] } + +const { includes } = ''; + +var bar = Array; +const { from } = bar; + +const { ['o' + 'f']: fuz } = Array; + +let forEach = 'sort'; +({ forEach } = zzz); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/options.json new file mode 100644 index 0000000000..b36348a997 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/options.json @@ -0,0 +1,14 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "targets": { "browsers": "ie 6" }, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/output.mjs new file mode 100644 index 0000000000..097811cac9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-destructuring/output.mjs @@ -0,0 +1,53 @@ +import "core-js/modules/es.function.bind.js"; +import "core-js/modules/es.object.entries.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.regexp.to-string.js"; +import "core-js/modules/es.date.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.regexp.exec.js"; +import "core-js/modules/es.string.trim.js"; +import "core-js/modules/es.array.filter.js"; +import "core-js/modules/es.string.includes.js"; +import "core-js/modules/es.array.from.js"; +import "core-js/modules/es.array.of.js"; +import "core-js/modules/es.array.for-each.js"; +import "core-js/modules/web.dom-collections.for-each.js"; +var bind, toString; +var { + bind: bind +} = Function; +var { + entries: entries +} = Object; +({ + toString: toString +} = Math); +var [{ + exec: exec +}] = something; +var { + 'trim': foo +} = '1'; +var { + foo: { + filter: filter + } +} = { + foo: [] +}; +var { + includes: includes +} = ''; +var bar = Array; +var { + from: from +} = bar; +var { + ['o' + 'f']: fuz +} = Array; +var forEach = 'sort'; +({ + forEach: forEach +} = zzz); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/input.mjs new file mode 100644 index 0000000000..2c63640feb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/input.mjs @@ -0,0 +1 @@ +a = { b, ...c }; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/options.json new file mode 100644 index 0000000000..723c1039a3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["proposal-object-rest-spread"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/output.mjs new file mode 100644 index 0000000000..a1e4b08b0d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-object-spread/output.mjs @@ -0,0 +1,4 @@ +a = { + b: b, + ...c +}; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/input.mjs new file mode 100644 index 0000000000..0fef928e16 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/input.mjs @@ -0,0 +1,4 @@ +var p = Promise.resolve(0); +Promise.all([p]).then(outcome => { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/options.json new file mode 100644 index 0000000000..0975cd86bf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie > 10"] + }, + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/output.mjs new file mode 100644 index 0000000000..d690555c33 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-all/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +var p = Promise.resolve(0); +Promise.all([p]).then(function (outcome) { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/input.mjs new file mode 100644 index 0000000000..bb634febe9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/input.mjs @@ -0,0 +1,4 @@ +var p = Promise.resolve(0); +p.finally(() => { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/options.json new file mode 100644 index 0000000000..0975cd86bf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie > 10"] + }, + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/output.mjs new file mode 100644 index 0000000000..cbb65f55a2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-finally/output.mjs @@ -0,0 +1,7 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.promise.finally.js"; +var p = Promise.resolve(0); +p.finally(function () { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/input.mjs new file mode 100644 index 0000000000..334252838b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/input.mjs @@ -0,0 +1,4 @@ +var p = Promise.resolve(0); +Promise.race([p]).then(outcome => { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/options.json new file mode 100644 index 0000000000..0975cd86bf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie > 10"] + }, + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/output.mjs new file mode 100644 index 0000000000..323e83b19d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-promise-race/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +var p = Promise.resolve(0); +Promise.race([p]).then(function (outcome) { + alert("OK"); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/input.mjs new file mode 100644 index 0000000000..8f6724b27f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/input.mjs @@ -0,0 +1 @@ +async function a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/options.json new file mode 100644 index 0000000000..abaa6f0c22 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "targets": { + "chrome": 70 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/output.mjs new file mode 100644 index 0000000000..5d965c6200 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-and-promise-native-support/output.mjs @@ -0,0 +1 @@ +async function a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/input.mjs new file mode 100644 index 0000000000..8f6724b27f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/input.mjs @@ -0,0 +1 @@ +async function a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/options.json new file mode 100644 index 0000000000..793f43d96f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "targets": { + "chrome": 55 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/output.mjs new file mode 100644 index 0000000000..20a7a28e19 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async-native-support/output.mjs @@ -0,0 +1,3 @@ +import "core-js/modules/es.promise.js"; + +async function a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/input.mjs new file mode 100644 index 0000000000..8f6724b27f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/input.mjs @@ -0,0 +1 @@ +async function a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/output.mjs new file mode 100644 index 0000000000..aab976cb07 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-async/output.mjs @@ -0,0 +1,26 @@ +import "regenerator-runtime/runtime.js"; +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; + +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } + +function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } + +function a() { + return _a.apply(this, arguments); +} + +function _a() { + _a = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + case "end": + return _context.stop(); + } + } + }, _callee); + })); + return _a.apply(this, arguments); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/input.mjs new file mode 100644 index 0000000000..4df46943d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/input.mjs @@ -0,0 +1 @@ +function* a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/options.json new file mode 100644 index 0000000000..6814f1539e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "targets": { + "node": 6 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/output.mjs new file mode 100644 index 0000000000..4df46943d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator-native-support/output.mjs @@ -0,0 +1 @@ +function* a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/input.mjs new file mode 100644 index 0000000000..74604e9198 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/input.mjs @@ -0,0 +1 @@ +function* a(){} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/output.mjs new file mode 100644 index 0000000000..6534789821 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-regenerator-used-generator/output.mjs @@ -0,0 +1,15 @@ +import "regenerator-runtime/runtime.js"; + +var _marked = /*#__PURE__*/regeneratorRuntime.mark(a); + +function a() { + return regeneratorRuntime.wrap(function a$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + case "end": + return _context.stop(); + } + } + }, _marked); +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/input.mjs new file mode 100644 index 0000000000..39641419b1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/input.mjs @@ -0,0 +1,26 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression +_arr[Symbol.iterator](); // Symbol.iterator + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { var blah = new WeakMap(); } // shadowed + +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/options.json new file mode 100644 index 0000000000..5549e374aa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/options.json @@ -0,0 +1,13 @@ +{ + "sourceType": "module", + "presets": [ + [ + "../../../../lib", + { + "shippedProposals": true, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/output.js new file mode 100644 index 0000000000..3e89f2d3f5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-shippedProposals/output.js @@ -0,0 +1,69 @@ +"use strict"; + +require("core-js/modules/es.array.from.js"); + +require("core-js/modules/es.string.iterator.js"); + +require("core-js/modules/es.map.js"); + +require("core-js/modules/es.object.to-string.js"); + +require("core-js/modules/es.array.iterator.js"); + +require("core-js/modules/web.dom-collections.iterator.js"); + +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.symbol.match.js"); + +require("core-js/modules/es.string.match.js"); + +require("core-js/modules/es.symbol.js"); + +require("core-js/modules/es.symbol.description.js"); + +require("core-js/modules/es.symbol.iterator.js"); + +require("core-js/modules/es.regexp.exec.js"); + +require("core-js/modules/web.queue-microtask.js"); + +require("core-js/modules/esnext.global-this.js"); + +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression + +_arr[Symbol.iterator](); // Symbol.iterator +// no import + + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed + + +var foo = new Promise(function (resolve) { + resolve(new Map()); +}); +queueMicrotask(function () { + return globalThis; +}); +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/input.js new file mode 100644 index 0000000000..39f9e5858b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/input.js @@ -0,0 +1,8 @@ +require("foo"); + +const x = new Promise(resolve => { + const p = []; + + if (p.includes("a")) { + } +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/options.json new file mode 100644 index 0000000000..7db8c24ae5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "targets": { + "node": "4.0.0" + }, + "useBuiltIns": "usage", + "corejs": 3, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/output.js new file mode 100644 index 0000000000..10ea34b9f7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script-query/output.js @@ -0,0 +1,13 @@ +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.object.to-string.js"); + +require("core-js/modules/es.array.includes.js"); + +require("foo"); + +var x = new Promise(function (resolve) { + var p = []; + + if (p.includes("a")) {} +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/input.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/input.js new file mode 100644 index 0000000000..39f9e5858b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/input.js @@ -0,0 +1,8 @@ +require("foo"); + +const x = new Promise(resolve => { + const p = []; + + if (p.includes("a")) { + } +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/options.json new file mode 100644 index 0000000000..7db8c24ae5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/options.json @@ -0,0 +1,16 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "modules": false, + "targets": { + "node": "4.0.0" + }, + "useBuiltIns": "usage", + "corejs": 3, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/output.js b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/output.js new file mode 100644 index 0000000000..10ea34b9f7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-source-type-script/output.js @@ -0,0 +1,13 @@ +require("core-js/modules/es.promise.js"); + +require("core-js/modules/es.object.to-string.js"); + +require("core-js/modules/es.array.includes.js"); + +require("foo"); + +var x = new Promise(function (resolve) { + var p = []; + + if (p.includes("a")) {} +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/input.mjs new file mode 100644 index 0000000000..457ddbbd55 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/input.mjs @@ -0,0 +1 @@ +a = [b, ...c]; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/options.json new file mode 100644 index 0000000000..ae6c1c0b3d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "exclude": ["transform-spread"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/output.mjs new file mode 100644 index 0000000000..6daa5d138f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-spread/output.mjs @@ -0,0 +1,4 @@ +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +a = [b, ...c]; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/input.mjs new file mode 100644 index 0000000000..12ff05d97b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/input.mjs @@ -0,0 +1,4 @@ +Object.keys(foo); +const getOwnPropertySymbols = Object.getOwnPropertySymbols; +const { assign } = Object; +'defineProperty' in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/options.json new file mode 100644 index 0000000000..d868cc145b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false, + "targets": { + "chrome": 71 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/output.mjs new file mode 100644 index 0000000000..155f173e48 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods-native-support/output.mjs @@ -0,0 +1,6 @@ +Object.keys(foo); +const getOwnPropertySymbols = Object.getOwnPropertySymbols; +const { + assign +} = Object; +'defineProperty' in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/input.mjs new file mode 100644 index 0000000000..12ff05d97b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/input.mjs @@ -0,0 +1,4 @@ +Object.keys(foo); +const getOwnPropertySymbols = Object.getOwnPropertySymbols; +const { assign } = Object; +'defineProperty' in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/options.json new file mode 100644 index 0000000000..b36348a997 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/options.json @@ -0,0 +1,14 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "targets": { "browsers": "ie 6" }, + "modules": false, + "exclude": ["transform-destructuring"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/output.mjs new file mode 100644 index 0000000000..c61ee403a3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-static-methods/output.mjs @@ -0,0 +1,10 @@ +import "core-js/modules/es.object.keys.js"; +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.object.assign.js"; +import "core-js/modules/es.object.define-property.js"; +Object.keys(foo); +var getOwnPropertySymbols = Object.getOwnPropertySymbols; +var { + assign: assign +} = Object; +'defineProperty' in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/input.mjs new file mode 100644 index 0000000000..3d72e8e71c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/input.mjs @@ -0,0 +1 @@ +Symbol.iterator in arr diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/output.mjs new file mode 100644 index 0000000000..8a311de5ef --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator-in/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +Symbol.iterator in arr; diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/input.mjs new file mode 100644 index 0000000000..c44a50ddfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/input.mjs @@ -0,0 +1 @@ +arr[Symbol.iterator]() diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/options.json new file mode 100644 index 0000000000..c7f8e1de84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/output.mjs new file mode 100644 index 0000000000..feae518cc1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-symbol-iterator/output.mjs @@ -0,0 +1,8 @@ +import "core-js/modules/es.symbol.iterator.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.string.iterator.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; +import "core-js/modules/es.symbol.js"; +import "core-js/modules/es.symbol.description.js"; +arr[Symbol.iterator](); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/input.mjs new file mode 100644 index 0000000000..0f5be0d2da --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/input.mjs @@ -0,0 +1,5 @@ +Promise.resolve().then(it => { + setTimeout(foo, 1, 2); + setInterval(foo, 1, 2); + setImmediate(foo, 1, 2); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/options.json new file mode 100644 index 0000000000..93c96f3dfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/output.mjs new file mode 100644 index 0000000000..c24073d2c5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-timers/output.mjs @@ -0,0 +1,9 @@ +import "core-js/modules/es.promise.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/web.timers.js"; +import "core-js/modules/web.immediate.js"; +Promise.resolve().then(function (it) { + setTimeout(foo, 1, 2); + setInterval(foo, 1, 2); + setImmediate(foo, 1, 2); +}); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/input.mjs new file mode 100644 index 0000000000..b0bc068aa0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/input.mjs @@ -0,0 +1 @@ +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/options.json new file mode 100644 index 0000000000..87de5aba49 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "targets": { + "edge": "13" + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/output.mjs new file mode 100644 index 0000000000..f6483f1726 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-edge-13/output.mjs @@ -0,0 +1,6 @@ +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/input.mjs new file mode 100644 index 0000000000..2394d067f8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/input.mjs @@ -0,0 +1 @@ +Int8Array.of(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/options.json new file mode 100644 index 0000000000..93c96f3dfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/output.mjs new file mode 100644 index 0000000000..1e573e43f7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array-static/output.mjs @@ -0,0 +1,29 @@ +import "core-js/modules/es.typed-array.of.js"; +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array-buffer.slice.js"; +Int8Array.of(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/input.mjs new file mode 100644 index 0000000000..b0bc068aa0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/input.mjs @@ -0,0 +1 @@ +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/options.json new file mode 100644 index 0000000000..93c96f3dfd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "targets": { "browsers": "ie 6" }, + "corejs": 3, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/output.mjs new file mode 100644 index 0000000000..32691a3848 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-typed-array/output.mjs @@ -0,0 +1,28 @@ +import "core-js/modules/es.typed-array.int8-array.js"; +import "core-js/modules/es.typed-array.copy-within.js"; +import "core-js/modules/es.typed-array.every.js"; +import "core-js/modules/es.typed-array.fill.js"; +import "core-js/modules/es.typed-array.filter.js"; +import "core-js/modules/es.typed-array.find.js"; +import "core-js/modules/es.typed-array.find-index.js"; +import "core-js/modules/es.typed-array.for-each.js"; +import "core-js/modules/es.typed-array.includes.js"; +import "core-js/modules/es.typed-array.index-of.js"; +import "core-js/modules/es.typed-array.iterator.js"; +import "core-js/modules/es.typed-array.join.js"; +import "core-js/modules/es.typed-array.last-index-of.js"; +import "core-js/modules/es.typed-array.map.js"; +import "core-js/modules/es.typed-array.reduce.js"; +import "core-js/modules/es.typed-array.reduce-right.js"; +import "core-js/modules/es.typed-array.reverse.js"; +import "core-js/modules/es.typed-array.set.js"; +import "core-js/modules/es.typed-array.slice.js"; +import "core-js/modules/es.typed-array.some.js"; +import "core-js/modules/es.typed-array.sort.js"; +import "core-js/modules/es.typed-array.subarray.js"; +import "core-js/modules/es.typed-array.to-locale-string.js"; +import "core-js/modules/es.typed-array.to-string.js"; +import "core-js/modules/es.object.to-string.js"; +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/es.array-buffer.slice.js"; +new Int8Array(1); diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/input.mjs new file mode 100644 index 0000000000..927d2f2772 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/input.mjs @@ -0,0 +1,3 @@ +function* a() { + yield 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/options.json new file mode 100644 index 0000000000..f288ad5a39 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "targets": { + "chrome": 55 + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/output.mjs new file mode 100644 index 0000000000..927d2f2772 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-non-star/output.mjs @@ -0,0 +1,3 @@ +function* a() { + yield 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/input.mjs new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/input.mjs @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/options.json b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/options.json new file mode 100644 index 0000000000..f288ad5a39 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/options.json @@ -0,0 +1,15 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": "usage", + "corejs": 3, + "targets": { + "chrome": 55 + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/output.mjs new file mode 100644 index 0000000000..923ee6b8b9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-yield-star/output.mjs @@ -0,0 +1,6 @@ +import "core-js/modules/es.array.iterator.js"; +import "core-js/modules/web.dom-collections.iterator.js"; + +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-all/output.mjs index fd39d7a3b3..7a366c2431 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-all/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-all/output.mjs @@ -1,167 +1,10 @@ -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; -import "core-js/modules/es.symbol.async-iterator.js"; -import "core-js/modules/es.symbol.has-instance.js"; -import "core-js/modules/es.symbol.is-concat-spreadable.js"; -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.symbol.match.js"; -import "core-js/modules/es.symbol.replace.js"; -import "core-js/modules/es.symbol.search.js"; -import "core-js/modules/es.symbol.species.js"; -import "core-js/modules/es.symbol.split.js"; -import "core-js/modules/es.symbol.to-primitive.js"; -import "core-js/modules/es.symbol.to-string-tag.js"; -import "core-js/modules/es.symbol.unscopables.js"; -import "core-js/modules/es.array.concat.js"; -import "core-js/modules/es.array.copy-within.js"; -import "core-js/modules/es.array.every.js"; -import "core-js/modules/es.array.fill.js"; -import "core-js/modules/es.array.filter.js"; -import "core-js/modules/es.array.find.js"; -import "core-js/modules/es.array.find-index.js"; -import "core-js/modules/es.array.flat.js"; -import "core-js/modules/es.array.flat-map.js"; -import "core-js/modules/es.array.for-each.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.array.includes.js"; -import "core-js/modules/es.array.index-of.js"; -import "core-js/modules/es.array.is-array.js"; -import "core-js/modules/es.array.iterator.js"; -import "core-js/modules/es.array.join.js"; -import "core-js/modules/es.array.last-index-of.js"; -import "core-js/modules/es.array.map.js"; -import "core-js/modules/es.array.of.js"; import "core-js/modules/es.array.reduce.js"; import "core-js/modules/es.array.reduce-right.js"; -import "core-js/modules/es.array.reverse.js"; -import "core-js/modules/es.array.slice.js"; -import "core-js/modules/es.array.some.js"; -import "core-js/modules/es.array.sort.js"; -import "core-js/modules/es.array.species.js"; -import "core-js/modules/es.array.splice.js"; import "core-js/modules/es.array.unscopables.flat.js"; import "core-js/modules/es.array.unscopables.flat-map.js"; -import "core-js/modules/es.array-buffer.constructor.js"; -import "core-js/modules/es.array-buffer.is-view.js"; -import "core-js/modules/es.array-buffer.slice.js"; -import "core-js/modules/es.data-view.js"; -import "core-js/modules/es.date.now.js"; -import "core-js/modules/es.date.to-iso-string.js"; -import "core-js/modules/es.date.to-json.js"; -import "core-js/modules/es.date.to-primitive.js"; -import "core-js/modules/es.date.to-string.js"; -import "core-js/modules/es.function.bind.js"; -import "core-js/modules/es.function.has-instance.js"; -import "core-js/modules/es.function.name.js"; -import "core-js/modules/es.json.to-string-tag.js"; -import "core-js/modules/es.map.js"; -import "core-js/modules/es.math.acosh.js"; -import "core-js/modules/es.math.asinh.js"; -import "core-js/modules/es.math.atanh.js"; -import "core-js/modules/es.math.cbrt.js"; -import "core-js/modules/es.math.clz32.js"; -import "core-js/modules/es.math.cosh.js"; -import "core-js/modules/es.math.expm1.js"; -import "core-js/modules/es.math.fround.js"; import "core-js/modules/es.math.hypot.js"; -import "core-js/modules/es.math.imul.js"; -import "core-js/modules/es.math.log10.js"; -import "core-js/modules/es.math.log1p.js"; -import "core-js/modules/es.math.log2.js"; -import "core-js/modules/es.math.sign.js"; -import "core-js/modules/es.math.sinh.js"; -import "core-js/modules/es.math.tanh.js"; -import "core-js/modules/es.math.to-string-tag.js"; -import "core-js/modules/es.math.trunc.js"; -import "core-js/modules/es.number.constructor.js"; -import "core-js/modules/es.number.epsilon.js"; -import "core-js/modules/es.number.is-finite.js"; -import "core-js/modules/es.number.is-integer.js"; -import "core-js/modules/es.number.is-nan.js"; -import "core-js/modules/es.number.is-safe-integer.js"; -import "core-js/modules/es.number.max-safe-integer.js"; -import "core-js/modules/es.number.min-safe-integer.js"; -import "core-js/modules/es.number.parse-float.js"; -import "core-js/modules/es.number.parse-int.js"; -import "core-js/modules/es.number.to-fixed.js"; -import "core-js/modules/es.number.to-precision.js"; -import "core-js/modules/es.object.assign.js"; -import "core-js/modules/es.object.create.js"; -import "core-js/modules/es.object.define-getter.js"; -import "core-js/modules/es.object.define-properties.js"; -import "core-js/modules/es.object.define-property.js"; -import "core-js/modules/es.object.define-setter.js"; -import "core-js/modules/es.object.entries.js"; -import "core-js/modules/es.object.freeze.js"; -import "core-js/modules/es.object.from-entries.js"; -import "core-js/modules/es.object.get-own-property-descriptor.js"; -import "core-js/modules/es.object.get-own-property-descriptors.js"; -import "core-js/modules/es.object.get-own-property-names.js"; -import "core-js/modules/es.object.get-prototype-of.js"; -import "core-js/modules/es.object.is.js"; -import "core-js/modules/es.object.is-extensible.js"; -import "core-js/modules/es.object.is-frozen.js"; -import "core-js/modules/es.object.is-sealed.js"; -import "core-js/modules/es.object.keys.js"; -import "core-js/modules/es.object.lookup-getter.js"; -import "core-js/modules/es.object.lookup-setter.js"; -import "core-js/modules/es.object.prevent-extensions.js"; -import "core-js/modules/es.object.seal.js"; -import "core-js/modules/es.object.set-prototype-of.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.object.values.js"; -import "core-js/modules/es.parse-float.js"; -import "core-js/modules/es.parse-int.js"; -import "core-js/modules/es.promise.js"; import "core-js/modules/es.promise.finally.js"; -import "core-js/modules/es.reflect.apply.js"; -import "core-js/modules/es.reflect.construct.js"; -import "core-js/modules/es.reflect.define-property.js"; -import "core-js/modules/es.reflect.delete-property.js"; -import "core-js/modules/es.reflect.get.js"; -import "core-js/modules/es.reflect.get-own-property-descriptor.js"; -import "core-js/modules/es.reflect.get-prototype-of.js"; -import "core-js/modules/es.reflect.has.js"; -import "core-js/modules/es.reflect.is-extensible.js"; -import "core-js/modules/es.reflect.own-keys.js"; -import "core-js/modules/es.reflect.prevent-extensions.js"; -import "core-js/modules/es.reflect.set.js"; -import "core-js/modules/es.reflect.set-prototype-of.js"; -import "core-js/modules/es.regexp.constructor.js"; -import "core-js/modules/es.regexp.exec.js"; -import "core-js/modules/es.regexp.flags.js"; -import "core-js/modules/es.regexp.to-string.js"; -import "core-js/modules/es.set.js"; -import "core-js/modules/es.string.code-point-at.js"; -import "core-js/modules/es.string.ends-with.js"; -import "core-js/modules/es.string.from-code-point.js"; -import "core-js/modules/es.string.includes.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.string.match.js"; -import "core-js/modules/es.string.pad-end.js"; -import "core-js/modules/es.string.pad-start.js"; -import "core-js/modules/es.string.raw.js"; -import "core-js/modules/es.string.repeat.js"; import "core-js/modules/es.string.replace.js"; -import "core-js/modules/es.string.search.js"; -import "core-js/modules/es.string.split.js"; -import "core-js/modules/es.string.starts-with.js"; -import "core-js/modules/es.string.trim.js"; -import "core-js/modules/es.string.trim-end.js"; -import "core-js/modules/es.string.trim-start.js"; -import "core-js/modules/es.string.anchor.js"; -import "core-js/modules/es.string.big.js"; -import "core-js/modules/es.string.blink.js"; -import "core-js/modules/es.string.bold.js"; -import "core-js/modules/es.string.fixed.js"; -import "core-js/modules/es.string.fontcolor.js"; -import "core-js/modules/es.string.fontsize.js"; -import "core-js/modules/es.string.italics.js"; -import "core-js/modules/es.string.link.js"; -import "core-js/modules/es.string.small.js"; -import "core-js/modules/es.string.strike.js"; -import "core-js/modules/es.string.sub.js"; -import "core-js/modules/es.string.sup.js"; import "core-js/modules/es.typed-array.float32-array.js"; import "core-js/modules/es.typed-array.float64-array.js"; import "core-js/modules/es.typed-array.int8-array.js"; @@ -171,39 +14,13 @@ import "core-js/modules/es.typed-array.uint8-array.js"; import "core-js/modules/es.typed-array.uint8-clamped-array.js"; import "core-js/modules/es.typed-array.uint16-array.js"; import "core-js/modules/es.typed-array.uint32-array.js"; -import "core-js/modules/es.typed-array.copy-within.js"; -import "core-js/modules/es.typed-array.every.js"; -import "core-js/modules/es.typed-array.fill.js"; -import "core-js/modules/es.typed-array.filter.js"; -import "core-js/modules/es.typed-array.find.js"; -import "core-js/modules/es.typed-array.find-index.js"; -import "core-js/modules/es.typed-array.for-each.js"; import "core-js/modules/es.typed-array.from.js"; -import "core-js/modules/es.typed-array.includes.js"; -import "core-js/modules/es.typed-array.index-of.js"; -import "core-js/modules/es.typed-array.iterator.js"; -import "core-js/modules/es.typed-array.join.js"; -import "core-js/modules/es.typed-array.last-index-of.js"; -import "core-js/modules/es.typed-array.map.js"; import "core-js/modules/es.typed-array.of.js"; -import "core-js/modules/es.typed-array.reduce.js"; -import "core-js/modules/es.typed-array.reduce-right.js"; -import "core-js/modules/es.typed-array.reverse.js"; -import "core-js/modules/es.typed-array.set.js"; -import "core-js/modules/es.typed-array.slice.js"; -import "core-js/modules/es.typed-array.some.js"; -import "core-js/modules/es.typed-array.sort.js"; -import "core-js/modules/es.typed-array.subarray.js"; -import "core-js/modules/es.typed-array.to-locale-string.js"; -import "core-js/modules/es.typed-array.to-string.js"; -import "core-js/modules/es.weak-map.js"; -import "core-js/modules/es.weak-set.js"; import "core-js/modules/esnext.aggregate-error.js"; import "core-js/modules/esnext.array.last-index.js"; import "core-js/modules/esnext.array.last-item.js"; import "core-js/modules/esnext.composite-key.js"; import "core-js/modules/esnext.composite-symbol.js"; -import "core-js/modules/esnext.global-this.js"; import "core-js/modules/esnext.map.delete-all.js"; import "core-js/modules/esnext.map.every.js"; import "core-js/modules/esnext.map.filter.js"; @@ -280,12 +97,8 @@ import "core-js/modules/esnext.weak-set.add-all.js"; import "core-js/modules/esnext.weak-set.delete-all.js"; import "core-js/modules/esnext.weak-set.from.js"; import "core-js/modules/esnext.weak-set.of.js"; -import "core-js/modules/web.dom-collections.for-each.js"; import "core-js/modules/web.dom-collections.iterator.js"; import "core-js/modules/web.immediate.js"; -import "core-js/modules/web.queue-microtask.js"; -import "core-js/modules/web.timers.js"; import "core-js/modules/web.url.js"; import "core-js/modules/web.url.to-json.js"; import "core-js/modules/web.url-search-params.js"; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-es-proposals-stage/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-es-proposals-stage/output.mjs index fe66e4a684..55ea481701 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-es-proposals-stage/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-es-proposals-stage/output.mjs @@ -1,167 +1,10 @@ -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; -import "core-js/modules/es.symbol.async-iterator.js"; -import "core-js/modules/es.symbol.has-instance.js"; -import "core-js/modules/es.symbol.is-concat-spreadable.js"; -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.symbol.match.js"; -import "core-js/modules/es.symbol.replace.js"; -import "core-js/modules/es.symbol.search.js"; -import "core-js/modules/es.symbol.species.js"; -import "core-js/modules/es.symbol.split.js"; -import "core-js/modules/es.symbol.to-primitive.js"; -import "core-js/modules/es.symbol.to-string-tag.js"; -import "core-js/modules/es.symbol.unscopables.js"; -import "core-js/modules/es.array.concat.js"; -import "core-js/modules/es.array.copy-within.js"; -import "core-js/modules/es.array.every.js"; -import "core-js/modules/es.array.fill.js"; -import "core-js/modules/es.array.filter.js"; -import "core-js/modules/es.array.find.js"; -import "core-js/modules/es.array.find-index.js"; -import "core-js/modules/es.array.flat.js"; -import "core-js/modules/es.array.flat-map.js"; -import "core-js/modules/es.array.for-each.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.array.includes.js"; -import "core-js/modules/es.array.index-of.js"; -import "core-js/modules/es.array.is-array.js"; -import "core-js/modules/es.array.iterator.js"; -import "core-js/modules/es.array.join.js"; -import "core-js/modules/es.array.last-index-of.js"; -import "core-js/modules/es.array.map.js"; -import "core-js/modules/es.array.of.js"; import "core-js/modules/es.array.reduce.js"; import "core-js/modules/es.array.reduce-right.js"; -import "core-js/modules/es.array.reverse.js"; -import "core-js/modules/es.array.slice.js"; -import "core-js/modules/es.array.some.js"; -import "core-js/modules/es.array.sort.js"; -import "core-js/modules/es.array.species.js"; -import "core-js/modules/es.array.splice.js"; import "core-js/modules/es.array.unscopables.flat.js"; import "core-js/modules/es.array.unscopables.flat-map.js"; -import "core-js/modules/es.array-buffer.constructor.js"; -import "core-js/modules/es.array-buffer.is-view.js"; -import "core-js/modules/es.array-buffer.slice.js"; -import "core-js/modules/es.data-view.js"; -import "core-js/modules/es.date.now.js"; -import "core-js/modules/es.date.to-iso-string.js"; -import "core-js/modules/es.date.to-json.js"; -import "core-js/modules/es.date.to-primitive.js"; -import "core-js/modules/es.date.to-string.js"; -import "core-js/modules/es.function.bind.js"; -import "core-js/modules/es.function.has-instance.js"; -import "core-js/modules/es.function.name.js"; -import "core-js/modules/es.json.to-string-tag.js"; -import "core-js/modules/es.map.js"; -import "core-js/modules/es.math.acosh.js"; -import "core-js/modules/es.math.asinh.js"; -import "core-js/modules/es.math.atanh.js"; -import "core-js/modules/es.math.cbrt.js"; -import "core-js/modules/es.math.clz32.js"; -import "core-js/modules/es.math.cosh.js"; -import "core-js/modules/es.math.expm1.js"; -import "core-js/modules/es.math.fround.js"; import "core-js/modules/es.math.hypot.js"; -import "core-js/modules/es.math.imul.js"; -import "core-js/modules/es.math.log10.js"; -import "core-js/modules/es.math.log1p.js"; -import "core-js/modules/es.math.log2.js"; -import "core-js/modules/es.math.sign.js"; -import "core-js/modules/es.math.sinh.js"; -import "core-js/modules/es.math.tanh.js"; -import "core-js/modules/es.math.to-string-tag.js"; -import "core-js/modules/es.math.trunc.js"; -import "core-js/modules/es.number.constructor.js"; -import "core-js/modules/es.number.epsilon.js"; -import "core-js/modules/es.number.is-finite.js"; -import "core-js/modules/es.number.is-integer.js"; -import "core-js/modules/es.number.is-nan.js"; -import "core-js/modules/es.number.is-safe-integer.js"; -import "core-js/modules/es.number.max-safe-integer.js"; -import "core-js/modules/es.number.min-safe-integer.js"; -import "core-js/modules/es.number.parse-float.js"; -import "core-js/modules/es.number.parse-int.js"; -import "core-js/modules/es.number.to-fixed.js"; -import "core-js/modules/es.number.to-precision.js"; -import "core-js/modules/es.object.assign.js"; -import "core-js/modules/es.object.create.js"; -import "core-js/modules/es.object.define-getter.js"; -import "core-js/modules/es.object.define-properties.js"; -import "core-js/modules/es.object.define-property.js"; -import "core-js/modules/es.object.define-setter.js"; -import "core-js/modules/es.object.entries.js"; -import "core-js/modules/es.object.freeze.js"; -import "core-js/modules/es.object.from-entries.js"; -import "core-js/modules/es.object.get-own-property-descriptor.js"; -import "core-js/modules/es.object.get-own-property-descriptors.js"; -import "core-js/modules/es.object.get-own-property-names.js"; -import "core-js/modules/es.object.get-prototype-of.js"; -import "core-js/modules/es.object.is.js"; -import "core-js/modules/es.object.is-extensible.js"; -import "core-js/modules/es.object.is-frozen.js"; -import "core-js/modules/es.object.is-sealed.js"; -import "core-js/modules/es.object.keys.js"; -import "core-js/modules/es.object.lookup-getter.js"; -import "core-js/modules/es.object.lookup-setter.js"; -import "core-js/modules/es.object.prevent-extensions.js"; -import "core-js/modules/es.object.seal.js"; -import "core-js/modules/es.object.set-prototype-of.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.object.values.js"; -import "core-js/modules/es.parse-float.js"; -import "core-js/modules/es.parse-int.js"; -import "core-js/modules/es.promise.js"; import "core-js/modules/es.promise.finally.js"; -import "core-js/modules/es.reflect.apply.js"; -import "core-js/modules/es.reflect.construct.js"; -import "core-js/modules/es.reflect.define-property.js"; -import "core-js/modules/es.reflect.delete-property.js"; -import "core-js/modules/es.reflect.get.js"; -import "core-js/modules/es.reflect.get-own-property-descriptor.js"; -import "core-js/modules/es.reflect.get-prototype-of.js"; -import "core-js/modules/es.reflect.has.js"; -import "core-js/modules/es.reflect.is-extensible.js"; -import "core-js/modules/es.reflect.own-keys.js"; -import "core-js/modules/es.reflect.prevent-extensions.js"; -import "core-js/modules/es.reflect.set.js"; -import "core-js/modules/es.reflect.set-prototype-of.js"; -import "core-js/modules/es.regexp.constructor.js"; -import "core-js/modules/es.regexp.exec.js"; -import "core-js/modules/es.regexp.flags.js"; -import "core-js/modules/es.regexp.to-string.js"; -import "core-js/modules/es.set.js"; -import "core-js/modules/es.string.code-point-at.js"; -import "core-js/modules/es.string.ends-with.js"; -import "core-js/modules/es.string.from-code-point.js"; -import "core-js/modules/es.string.includes.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.string.match.js"; -import "core-js/modules/es.string.pad-end.js"; -import "core-js/modules/es.string.pad-start.js"; -import "core-js/modules/es.string.raw.js"; -import "core-js/modules/es.string.repeat.js"; import "core-js/modules/es.string.replace.js"; -import "core-js/modules/es.string.search.js"; -import "core-js/modules/es.string.split.js"; -import "core-js/modules/es.string.starts-with.js"; -import "core-js/modules/es.string.trim.js"; -import "core-js/modules/es.string.trim-end.js"; -import "core-js/modules/es.string.trim-start.js"; -import "core-js/modules/es.string.anchor.js"; -import "core-js/modules/es.string.big.js"; -import "core-js/modules/es.string.blink.js"; -import "core-js/modules/es.string.bold.js"; -import "core-js/modules/es.string.fixed.js"; -import "core-js/modules/es.string.fontcolor.js"; -import "core-js/modules/es.string.fontsize.js"; -import "core-js/modules/es.string.italics.js"; -import "core-js/modules/es.string.link.js"; -import "core-js/modules/es.string.small.js"; -import "core-js/modules/es.string.strike.js"; -import "core-js/modules/es.string.sub.js"; -import "core-js/modules/es.string.sup.js"; import "core-js/modules/es.typed-array.float32-array.js"; import "core-js/modules/es.typed-array.float64-array.js"; import "core-js/modules/es.typed-array.int8-array.js"; @@ -171,39 +14,13 @@ import "core-js/modules/es.typed-array.uint8-array.js"; import "core-js/modules/es.typed-array.uint8-clamped-array.js"; import "core-js/modules/es.typed-array.uint16-array.js"; import "core-js/modules/es.typed-array.uint32-array.js"; -import "core-js/modules/es.typed-array.copy-within.js"; -import "core-js/modules/es.typed-array.every.js"; -import "core-js/modules/es.typed-array.fill.js"; -import "core-js/modules/es.typed-array.filter.js"; -import "core-js/modules/es.typed-array.find.js"; -import "core-js/modules/es.typed-array.find-index.js"; -import "core-js/modules/es.typed-array.for-each.js"; import "core-js/modules/es.typed-array.from.js"; -import "core-js/modules/es.typed-array.includes.js"; -import "core-js/modules/es.typed-array.index-of.js"; -import "core-js/modules/es.typed-array.iterator.js"; -import "core-js/modules/es.typed-array.join.js"; -import "core-js/modules/es.typed-array.last-index-of.js"; -import "core-js/modules/es.typed-array.map.js"; import "core-js/modules/es.typed-array.of.js"; -import "core-js/modules/es.typed-array.reduce.js"; -import "core-js/modules/es.typed-array.reduce-right.js"; -import "core-js/modules/es.typed-array.reverse.js"; -import "core-js/modules/es.typed-array.set.js"; -import "core-js/modules/es.typed-array.slice.js"; -import "core-js/modules/es.typed-array.some.js"; -import "core-js/modules/es.typed-array.sort.js"; -import "core-js/modules/es.typed-array.subarray.js"; -import "core-js/modules/es.typed-array.to-locale-string.js"; -import "core-js/modules/es.typed-array.to-string.js"; -import "core-js/modules/es.weak-map.js"; -import "core-js/modules/es.weak-set.js"; import "core-js/modules/esnext.aggregate-error.js"; import "core-js/modules/esnext.array.last-index.js"; import "core-js/modules/esnext.array.last-item.js"; import "core-js/modules/esnext.composite-key.js"; import "core-js/modules/esnext.composite-symbol.js"; -import "core-js/modules/esnext.global-this.js"; import "core-js/modules/esnext.map.delete-all.js"; import "core-js/modules/esnext.map.every.js"; import "core-js/modules/esnext.map.filter.js"; @@ -283,4 +100,3 @@ import "core-js/modules/esnext.weak-set.of.js"; import "core-js/modules/web.url.js"; import "core-js/modules/web.url.to-json.js"; import "core-js/modules/web.url-search-params.js"; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-features/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-features/output.mjs index 6efea38675..721e18abc5 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-features/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-features/output.mjs @@ -1,6 +1,3 @@ -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.set.js"; -import "core-js/modules/es.string.iterator.js"; import "core-js/modules/esnext.set.add-all.js"; import "core-js/modules/esnext.set.delete-all.js"; import "core-js/modules/esnext.set.difference.js"; @@ -20,7 +17,4 @@ import "core-js/modules/esnext.set.some.js"; import "core-js/modules/esnext.set.symmetric-difference.js"; import "core-js/modules/esnext.set.union.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.array.iterator.js"; -import "core-js/modules/es.object.from-entries.js"; import "core-js/modules/esnext.string.replace-all.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-mixed/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-mixed/output.mjs index 885edac264..9f29b6d909 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-mixed/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-mixed/output.mjs @@ -1,44 +1,3 @@ -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.json.to-string-tag.js"; -import "core-js/modules/es.math.to-string-tag.js"; -import "core-js/modules/es.object.assign.js"; -import "core-js/modules/es.object.create.js"; -import "core-js/modules/es.object.define-getter.js"; -import "core-js/modules/es.object.define-properties.js"; -import "core-js/modules/es.object.define-property.js"; -import "core-js/modules/es.object.define-setter.js"; -import "core-js/modules/es.object.entries.js"; -import "core-js/modules/es.object.freeze.js"; -import "core-js/modules/es.object.from-entries.js"; -import "core-js/modules/es.object.get-own-property-descriptor.js"; -import "core-js/modules/es.object.get-own-property-descriptors.js"; -import "core-js/modules/es.object.get-own-property-names.js"; -import "core-js/modules/es.object.get-prototype-of.js"; -import "core-js/modules/es.object.is.js"; -import "core-js/modules/es.object.is-extensible.js"; -import "core-js/modules/es.object.is-frozen.js"; -import "core-js/modules/es.object.is-sealed.js"; -import "core-js/modules/es.object.keys.js"; -import "core-js/modules/es.object.lookup-getter.js"; -import "core-js/modules/es.object.lookup-setter.js"; -import "core-js/modules/es.object.prevent-extensions.js"; -import "core-js/modules/es.object.seal.js"; -import "core-js/modules/es.object.set-prototype-of.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.object.values.js"; -import "core-js/modules/es.reflect.apply.js"; -import "core-js/modules/es.reflect.construct.js"; -import "core-js/modules/es.reflect.define-property.js"; -import "core-js/modules/es.reflect.delete-property.js"; -import "core-js/modules/es.reflect.get.js"; -import "core-js/modules/es.reflect.get-own-property-descriptor.js"; -import "core-js/modules/es.reflect.get-prototype-of.js"; -import "core-js/modules/es.reflect.has.js"; -import "core-js/modules/es.reflect.is-extensible.js"; -import "core-js/modules/es.reflect.own-keys.js"; -import "core-js/modules/es.reflect.prevent-extensions.js"; -import "core-js/modules/es.reflect.set.js"; -import "core-js/modules/es.reflect.set-prototype-of.js"; import "core-js/modules/esnext.reflect.define-metadata.js"; import "core-js/modules/esnext.reflect.delete-metadata.js"; import "core-js/modules/esnext.reflect.get-metadata.js"; @@ -49,4 +8,3 @@ import "core-js/modules/esnext.reflect.has-metadata.js"; import "core-js/modules/esnext.reflect.has-own-metadata.js"; import "core-js/modules/esnext.reflect.metadata.js"; import 'core-js/something'; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-modules/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-modules/output.mjs index 332d84698b..f95cdb508f 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-modules/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-modules/output.mjs @@ -1,3 +1 @@ -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.object.from-entries.js"; import "core-js/modules/esnext.string.replace-all.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-proposals/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-proposals/output.mjs index 174594e893..9f065ff39a 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-proposals/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-proposals/output.mjs @@ -1,10 +1,8 @@ -import "core-js/modules/es.map.js"; import "core-js/modules/esnext.aggregate-error.js"; import "core-js/modules/esnext.array.last-index.js"; import "core-js/modules/esnext.array.last-item.js"; import "core-js/modules/esnext.composite-key.js"; import "core-js/modules/esnext.composite-symbol.js"; -import "core-js/modules/esnext.global-this.js"; import "core-js/modules/esnext.map.delete-all.js"; import "core-js/modules/esnext.map.every.js"; import "core-js/modules/esnext.map.filter.js"; @@ -84,4 +82,3 @@ import "core-js/modules/esnext.weak-set.of.js"; import "core-js/modules/web.url.js"; import "core-js/modules/web.url.to-json.js"; import "core-js/modules/web.url-search-params.js"; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stable/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stable/output.mjs index 03d658c2f7..5c04a26af7 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stable/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stable/output.mjs @@ -1,7 +1 @@ -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.set.js"; -import "core-js/modules/es.string.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.array.iterator.js"; -import "core-js/modules/es.object.from-entries.js"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stage/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stage/output.mjs index 174594e893..9f065ff39a 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stage/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-stage/output.mjs @@ -1,10 +1,8 @@ -import "core-js/modules/es.map.js"; import "core-js/modules/esnext.aggregate-error.js"; import "core-js/modules/esnext.array.last-index.js"; import "core-js/modules/esnext.array.last-item.js"; import "core-js/modules/esnext.composite-key.js"; import "core-js/modules/esnext.composite-symbol.js"; -import "core-js/modules/esnext.global-this.js"; import "core-js/modules/esnext.map.delete-all.js"; import "core-js/modules/esnext.map.every.js"; import "core-js/modules/esnext.map.filter.js"; @@ -84,4 +82,3 @@ import "core-js/modules/esnext.weak-set.of.js"; import "core-js/modules/web.url.js"; import "core-js/modules/web.url.to-json.js"; import "core-js/modules/web.url-search-params.js"; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-web/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-web/output.mjs index 385b070eeb..781e05449c 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-web/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-entries-web/output.mjs @@ -1,9 +1,5 @@ -import "core-js/modules/web.dom-collections.for-each.js"; import "core-js/modules/web.dom-collections.iterator.js"; import "core-js/modules/web.immediate.js"; -import "core-js/modules/web.queue-microtask.js"; -import "core-js/modules/web.timers.js"; import "core-js/modules/web.url.js"; import "core-js/modules/web.url.to-json.js"; import "core-js/modules/web.url-search-params.js"; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-normalization/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-normalization/output.mjs index 75a9f3d439..457c2b45e2 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-normalization/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-normalization/output.mjs @@ -1,11 +1,3 @@ -import "core-js/modules/es.map.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.string.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.set.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.promise.js"; import "core-js/modules/es.promise.finally.js"; -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.symbol.async-iterator.js"; import 'foo/index.js'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-specified-imports/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-specified-imports/output.mjs index 0119f0da2e..641944085b 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-specified-imports/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-specified-imports/output.mjs @@ -1,3 +1,3 @@ import { fromEntries } from 'core-js/es/object'; -var reflect = require('core-js/features/reflect'); +const reflect = require('core-js/features/reflect'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-stable/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-stable/output.mjs index 0b2a038c3a..c82d2cf4e9 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/entry-stable/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-stable/output.mjs @@ -1,167 +1,10 @@ -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; -import "core-js/modules/es.symbol.async-iterator.js"; -import "core-js/modules/es.symbol.has-instance.js"; -import "core-js/modules/es.symbol.is-concat-spreadable.js"; -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.symbol.match.js"; -import "core-js/modules/es.symbol.replace.js"; -import "core-js/modules/es.symbol.search.js"; -import "core-js/modules/es.symbol.species.js"; -import "core-js/modules/es.symbol.split.js"; -import "core-js/modules/es.symbol.to-primitive.js"; -import "core-js/modules/es.symbol.to-string-tag.js"; -import "core-js/modules/es.symbol.unscopables.js"; -import "core-js/modules/es.array.concat.js"; -import "core-js/modules/es.array.copy-within.js"; -import "core-js/modules/es.array.every.js"; -import "core-js/modules/es.array.fill.js"; -import "core-js/modules/es.array.filter.js"; -import "core-js/modules/es.array.find.js"; -import "core-js/modules/es.array.find-index.js"; -import "core-js/modules/es.array.flat.js"; -import "core-js/modules/es.array.flat-map.js"; -import "core-js/modules/es.array.for-each.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.array.includes.js"; -import "core-js/modules/es.array.index-of.js"; -import "core-js/modules/es.array.is-array.js"; -import "core-js/modules/es.array.iterator.js"; -import "core-js/modules/es.array.join.js"; -import "core-js/modules/es.array.last-index-of.js"; -import "core-js/modules/es.array.map.js"; -import "core-js/modules/es.array.of.js"; import "core-js/modules/es.array.reduce.js"; import "core-js/modules/es.array.reduce-right.js"; -import "core-js/modules/es.array.reverse.js"; -import "core-js/modules/es.array.slice.js"; -import "core-js/modules/es.array.some.js"; -import "core-js/modules/es.array.sort.js"; -import "core-js/modules/es.array.species.js"; -import "core-js/modules/es.array.splice.js"; import "core-js/modules/es.array.unscopables.flat.js"; import "core-js/modules/es.array.unscopables.flat-map.js"; -import "core-js/modules/es.array-buffer.constructor.js"; -import "core-js/modules/es.array-buffer.is-view.js"; -import "core-js/modules/es.array-buffer.slice.js"; -import "core-js/modules/es.data-view.js"; -import "core-js/modules/es.date.now.js"; -import "core-js/modules/es.date.to-iso-string.js"; -import "core-js/modules/es.date.to-json.js"; -import "core-js/modules/es.date.to-primitive.js"; -import "core-js/modules/es.date.to-string.js"; -import "core-js/modules/es.function.bind.js"; -import "core-js/modules/es.function.has-instance.js"; -import "core-js/modules/es.function.name.js"; -import "core-js/modules/es.json.to-string-tag.js"; -import "core-js/modules/es.map.js"; -import "core-js/modules/es.math.acosh.js"; -import "core-js/modules/es.math.asinh.js"; -import "core-js/modules/es.math.atanh.js"; -import "core-js/modules/es.math.cbrt.js"; -import "core-js/modules/es.math.clz32.js"; -import "core-js/modules/es.math.cosh.js"; -import "core-js/modules/es.math.expm1.js"; -import "core-js/modules/es.math.fround.js"; import "core-js/modules/es.math.hypot.js"; -import "core-js/modules/es.math.imul.js"; -import "core-js/modules/es.math.log10.js"; -import "core-js/modules/es.math.log1p.js"; -import "core-js/modules/es.math.log2.js"; -import "core-js/modules/es.math.sign.js"; -import "core-js/modules/es.math.sinh.js"; -import "core-js/modules/es.math.tanh.js"; -import "core-js/modules/es.math.to-string-tag.js"; -import "core-js/modules/es.math.trunc.js"; -import "core-js/modules/es.number.constructor.js"; -import "core-js/modules/es.number.epsilon.js"; -import "core-js/modules/es.number.is-finite.js"; -import "core-js/modules/es.number.is-integer.js"; -import "core-js/modules/es.number.is-nan.js"; -import "core-js/modules/es.number.is-safe-integer.js"; -import "core-js/modules/es.number.max-safe-integer.js"; -import "core-js/modules/es.number.min-safe-integer.js"; -import "core-js/modules/es.number.parse-float.js"; -import "core-js/modules/es.number.parse-int.js"; -import "core-js/modules/es.number.to-fixed.js"; -import "core-js/modules/es.number.to-precision.js"; -import "core-js/modules/es.object.assign.js"; -import "core-js/modules/es.object.create.js"; -import "core-js/modules/es.object.define-getter.js"; -import "core-js/modules/es.object.define-properties.js"; -import "core-js/modules/es.object.define-property.js"; -import "core-js/modules/es.object.define-setter.js"; -import "core-js/modules/es.object.entries.js"; -import "core-js/modules/es.object.freeze.js"; -import "core-js/modules/es.object.from-entries.js"; -import "core-js/modules/es.object.get-own-property-descriptor.js"; -import "core-js/modules/es.object.get-own-property-descriptors.js"; -import "core-js/modules/es.object.get-own-property-names.js"; -import "core-js/modules/es.object.get-prototype-of.js"; -import "core-js/modules/es.object.is.js"; -import "core-js/modules/es.object.is-extensible.js"; -import "core-js/modules/es.object.is-frozen.js"; -import "core-js/modules/es.object.is-sealed.js"; -import "core-js/modules/es.object.keys.js"; -import "core-js/modules/es.object.lookup-getter.js"; -import "core-js/modules/es.object.lookup-setter.js"; -import "core-js/modules/es.object.prevent-extensions.js"; -import "core-js/modules/es.object.seal.js"; -import "core-js/modules/es.object.set-prototype-of.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.object.values.js"; -import "core-js/modules/es.parse-float.js"; -import "core-js/modules/es.parse-int.js"; -import "core-js/modules/es.promise.js"; import "core-js/modules/es.promise.finally.js"; -import "core-js/modules/es.reflect.apply.js"; -import "core-js/modules/es.reflect.construct.js"; -import "core-js/modules/es.reflect.define-property.js"; -import "core-js/modules/es.reflect.delete-property.js"; -import "core-js/modules/es.reflect.get.js"; -import "core-js/modules/es.reflect.get-own-property-descriptor.js"; -import "core-js/modules/es.reflect.get-prototype-of.js"; -import "core-js/modules/es.reflect.has.js"; -import "core-js/modules/es.reflect.is-extensible.js"; -import "core-js/modules/es.reflect.own-keys.js"; -import "core-js/modules/es.reflect.prevent-extensions.js"; -import "core-js/modules/es.reflect.set.js"; -import "core-js/modules/es.reflect.set-prototype-of.js"; -import "core-js/modules/es.regexp.constructor.js"; -import "core-js/modules/es.regexp.exec.js"; -import "core-js/modules/es.regexp.flags.js"; -import "core-js/modules/es.regexp.to-string.js"; -import "core-js/modules/es.set.js"; -import "core-js/modules/es.string.code-point-at.js"; -import "core-js/modules/es.string.ends-with.js"; -import "core-js/modules/es.string.from-code-point.js"; -import "core-js/modules/es.string.includes.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.string.match.js"; -import "core-js/modules/es.string.pad-end.js"; -import "core-js/modules/es.string.pad-start.js"; -import "core-js/modules/es.string.raw.js"; -import "core-js/modules/es.string.repeat.js"; import "core-js/modules/es.string.replace.js"; -import "core-js/modules/es.string.search.js"; -import "core-js/modules/es.string.split.js"; -import "core-js/modules/es.string.starts-with.js"; -import "core-js/modules/es.string.trim.js"; -import "core-js/modules/es.string.trim-end.js"; -import "core-js/modules/es.string.trim-start.js"; -import "core-js/modules/es.string.anchor.js"; -import "core-js/modules/es.string.big.js"; -import "core-js/modules/es.string.blink.js"; -import "core-js/modules/es.string.bold.js"; -import "core-js/modules/es.string.fixed.js"; -import "core-js/modules/es.string.fontcolor.js"; -import "core-js/modules/es.string.fontsize.js"; -import "core-js/modules/es.string.italics.js"; -import "core-js/modules/es.string.link.js"; -import "core-js/modules/es.string.small.js"; -import "core-js/modules/es.string.strike.js"; -import "core-js/modules/es.string.sub.js"; -import "core-js/modules/es.string.sup.js"; import "core-js/modules/es.typed-array.float32-array.js"; import "core-js/modules/es.typed-array.float64-array.js"; import "core-js/modules/es.typed-array.int8-array.js"; @@ -171,39 +14,10 @@ import "core-js/modules/es.typed-array.uint8-array.js"; import "core-js/modules/es.typed-array.uint8-clamped-array.js"; import "core-js/modules/es.typed-array.uint16-array.js"; import "core-js/modules/es.typed-array.uint32-array.js"; -import "core-js/modules/es.typed-array.copy-within.js"; -import "core-js/modules/es.typed-array.every.js"; -import "core-js/modules/es.typed-array.fill.js"; -import "core-js/modules/es.typed-array.filter.js"; -import "core-js/modules/es.typed-array.find.js"; -import "core-js/modules/es.typed-array.find-index.js"; -import "core-js/modules/es.typed-array.for-each.js"; import "core-js/modules/es.typed-array.from.js"; -import "core-js/modules/es.typed-array.includes.js"; -import "core-js/modules/es.typed-array.index-of.js"; -import "core-js/modules/es.typed-array.iterator.js"; -import "core-js/modules/es.typed-array.join.js"; -import "core-js/modules/es.typed-array.last-index-of.js"; -import "core-js/modules/es.typed-array.map.js"; import "core-js/modules/es.typed-array.of.js"; -import "core-js/modules/es.typed-array.reduce.js"; -import "core-js/modules/es.typed-array.reduce-right.js"; -import "core-js/modules/es.typed-array.reverse.js"; -import "core-js/modules/es.typed-array.set.js"; -import "core-js/modules/es.typed-array.slice.js"; -import "core-js/modules/es.typed-array.some.js"; -import "core-js/modules/es.typed-array.sort.js"; -import "core-js/modules/es.typed-array.subarray.js"; -import "core-js/modules/es.typed-array.to-locale-string.js"; -import "core-js/modules/es.typed-array.to-string.js"; -import "core-js/modules/es.weak-map.js"; -import "core-js/modules/es.weak-set.js"; -import "core-js/modules/web.dom-collections.for-each.js"; import "core-js/modules/web.dom-collections.iterator.js"; import "core-js/modules/web.immediate.js"; -import "core-js/modules/web.queue-microtask.js"; -import "core-js/modules/web.timers.js"; import "core-js/modules/web.url.js"; import "core-js/modules/web.url.to-json.js"; import "core-js/modules/web.url-search-params.js"; -import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/exclude/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/exclude/output.mjs index b5b79bde05..c70b44b5a4 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/exclude/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/exclude/output.mjs @@ -1,6 +1,3 @@ -import "core-js/modules/es.promise.js"; -import "core-js/modules/es.object.to-string.js"; - async function a() { await 1; } diff --git a/packages/babel-preset-env/test/fixtures/corejs3/options.json b/packages/babel-preset-env/test/fixtures/corejs3/options.json index 8da9fa5b3d..5c577bc8df 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/options.json +++ b/packages/babel-preset-env/test/fixtures/corejs3/options.json @@ -1,3 +1,4 @@ { - "externalHelpers": false + "externalHelpers": false, + "BABEL_8_BREAKING": true } diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-all-proposals/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-all-proposals/output.mjs index 66c4c42edc..ea6534ba71 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-all-proposals/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-all-proposals/output.mjs @@ -1,6 +1,3 @@ -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.map.js"; import "core-js/modules/esnext.map.delete-all.js"; import "core-js/modules/esnext.map.every.js"; import "core-js/modules/esnext.map.filter.js"; @@ -14,18 +11,7 @@ import "core-js/modules/esnext.map.merge.js"; import "core-js/modules/esnext.map.reduce.js"; import "core-js/modules/esnext.map.some.js"; import "core-js/modules/esnext.map.update.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.promise.js"; -import "core-js/modules/es.symbol.match.js"; -import "core-js/modules/es.string.match.js"; -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.regexp.exec.js"; -import "core-js/modules/web.queue-microtask.js"; -import "core-js/modules/esnext.global-this.js"; import "core-js/modules/esnext.observable.js"; import "core-js/modules/esnext.symbol.observable.js"; Array.from; // static method @@ -58,10 +44,8 @@ function H(WeakMap) { } // shadowed -var foo = new Promise(function (resolve) { +const foo = new Promise(resolve => { resolve(new Map()); }); -queueMicrotask(function () { - return globalThis; -}); +queueMicrotask(() => globalThis); Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-all/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-all/output.mjs index 8053d3b502..1893c9d92d 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-all/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-all/output.mjs @@ -1,18 +1,4 @@ -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.map.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.promise.js"; -import "core-js/modules/es.symbol.match.js"; -import "core-js/modules/es.string.match.js"; -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.regexp.exec.js"; -import "core-js/modules/web.queue-microtask.js"; -import "core-js/modules/es.global-this.js"; import "core-js/modules/es.promise.all-settled.js"; import "core-js/modules/es.string.match-all.js"; Array.from; // static method @@ -45,12 +31,10 @@ function H(WeakMap) { } // shadowed -var foo = new Promise(function (resolve) { +const foo = new Promise(resolve => { resolve(new Map()); }); -queueMicrotask(function () { - return globalThis; -}); +queueMicrotask(() => globalThis); Observable.from(10); Promise.allSettled([]); S.matchAll(); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-built-in-from-global-object/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-built-in-from-global-object/output.mjs index c2b70f84da..cbb9a6be35 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-built-in-from-global-object/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-built-in-from-global-object/output.mjs @@ -1,7 +1,3 @@ -import "core-js/modules/es.set.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -var Set = window.Set; -var Map = something.Map; +const Set = window.Set; +const Map = something.Map; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-assignment/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-assignment/output.mjs index a41346aaec..25cb806a5a 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-assignment/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-assignment/output.mjs @@ -1,4 +1,2 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-catch/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-catch/output.mjs index 9d6829e2dd..4812cb6c17 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-catch/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-catch/output.mjs @@ -1,5 +1,3 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; try { diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-for-x/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-for-x/output.mjs index 21546c1ef8..af603805f6 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-for-x/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-for-x/output.mjs @@ -1,7 +1,3 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -for (var [a, b] in c) { - ; -} +for (let [a, b] in c); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-iife/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-iife/output.mjs index 12cc00ab39..ae80bb15d1 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-iife/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-iife/output.mjs @@ -1,14 +1,10 @@ -import "core-js/modules/es.object.entries.js"; -import "core-js/modules/es.array.from.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.string.includes.js"; !function (foo, { - entries: entries + entries }) {}({}, Object); new function (foo, { - from: from + from }) {}({}, Array); -(function ({ - includes: includes -}) {})('42'); +(({ + includes +}) => {})('42'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-params/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-params/output.mjs index e4c1de02f3..b6904d66a7 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-params/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-params/output.mjs @@ -1,7 +1,3 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -function a(_ref) { - var [b, c] = _ref; -} +function a([b, c]) {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-variable-declaration/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-variable-declaration/output.mjs index da008c84d9..4f077ab15a 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-variable-declaration/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-destructuring-variable-declaration/output.mjs @@ -1,4 +1,2 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -var [a, b] = c; +const [a, b] = c; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-dynamic-import/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-dynamic-import/output.mjs index 70fa4a5beb..7ebcdb5d17 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-dynamic-import/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-dynamic-import/output.mjs @@ -1,3 +1 @@ -import "core-js/modules/es.promise.js"; -import "core-js/modules/es.object.to-string.js"; -var foo = import('foo'); +const foo = import('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-class-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-class-methods/output.mjs index 47128eda8b..f97740b035 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-class-methods/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-class-methods/output.mjs @@ -1,7 +1,4 @@ -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.object.assign.js"; var objectClass = Object; var arrayInstance = []; var assignStr = "assign"; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-instance-methods/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-instance-methods/output.mjs index 28a71c4b6d..3bd9739fd3 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-instance-methods/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-evaluated-instance-methods/output.mjs @@ -1,5 +1,3 @@ -import "core-js/modules/es.array.includes.js"; -import "core-js/modules/es.array.find.js"; var arrayInstance = []; var inclidesStr = "includes"; var findStr = "find"; // Allow instance methods be assigned to variables. diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-fetch/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-fetch/output.mjs index f2c03aa824..4f8bca34cb 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-fetch/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-fetch/output.mjs @@ -1,3 +1 @@ -import "core-js/modules/es.promise.js"; -import "core-js/modules/es.object.to-string.js"; -var foo = fetch('foo'); +const foo = fetch('foo'); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-for-of/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-for-of/output.mjs index 4d28fbc40f..6657e26b04 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-for-of/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-for-of/output.mjs @@ -1,7 +1,3 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -for (var a of b) { - ; -} +for (let a of b); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-in/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-in/output.mjs index 7b400eef7b..01732c2fdf 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-in/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-in/output.mjs @@ -1,8 +1,3 @@ -import "core-js/modules/es.object.entries.js"; -import "core-js/modules/es.array.includes.js"; -import "core-js/modules/es.object.values.js"; -import "core-js/modules/es.object.from-entries.js"; -import "core-js/modules/es.array.iterator.js"; 'entries' in Object; 'includes' in [1, 2, 3]; 'va' + 'lues' in Object; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-modules-transform/output.js b/packages/babel-preset-env/test/fixtures/corejs3/usage-modules-transform/output.js index c6b6028f2f..4822fcdc6f 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-modules-transform/output.js +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-modules-transform/output.js @@ -1,7 +1,3 @@ "use strict"; -require("core-js/modules/es.promise.js"); - -require("core-js/modules/es.object.to-string.js"); - Promise; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-object-spread/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-object-spread/output.mjs index a1e4b08b0d..23c3d5991c 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-object-spread/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-object-spread/output.mjs @@ -1,4 +1,4 @@ a = { - b: b, + b, ...c }; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-async/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-async/output.mjs index aab976cb07..5d965c6200 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-async/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-async/output.mjs @@ -1,26 +1 @@ -import "regenerator-runtime/runtime.js"; -import "core-js/modules/es.promise.js"; -import "core-js/modules/es.object.to-string.js"; - -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } - -function a() { - return _a.apply(this, arguments); -} - -function _a() { - _a = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _a.apply(this, arguments); -} +async function a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-generator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-generator/output.mjs index 6534789821..4df46943d2 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-generator/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-regenerator-used-generator/output.mjs @@ -1,15 +1 @@ -import "regenerator-runtime/runtime.js"; - -var _marked = /*#__PURE__*/regeneratorRuntime.mark(a); - -function a() { - return regeneratorRuntime.wrap(function a$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - case "end": - return _context.stop(); - } - } - }, _marked); -} +function* a() {} diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-shippedProposals/output.js b/packages/babel-preset-env/test/fixtures/corejs3/usage-shippedProposals/output.js index 3e89f2d3f5..c598bfb57c 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-shippedProposals/output.js +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-shippedProposals/output.js @@ -1,35 +1,7 @@ "use strict"; -require("core-js/modules/es.array.from.js"); - -require("core-js/modules/es.string.iterator.js"); - -require("core-js/modules/es.map.js"); - -require("core-js/modules/es.object.to-string.js"); - -require("core-js/modules/es.array.iterator.js"); - require("core-js/modules/web.dom-collections.iterator.js"); -require("core-js/modules/es.promise.js"); - -require("core-js/modules/es.symbol.match.js"); - -require("core-js/modules/es.string.match.js"); - -require("core-js/modules/es.symbol.js"); - -require("core-js/modules/es.symbol.description.js"); - -require("core-js/modules/es.symbol.iterator.js"); - -require("core-js/modules/es.regexp.exec.js"); - -require("core-js/modules/web.queue-microtask.js"); - -require("core-js/modules/esnext.global-this.js"); - Array.from; // static method Map; // built-in @@ -60,10 +32,8 @@ function H(WeakMap) { } // shadowed -var foo = new Promise(function (resolve) { +const foo = new Promise(resolve => { resolve(new Map()); }); -queueMicrotask(function () { - return globalThis; -}); +queueMicrotask(() => globalThis); Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-spread/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-spread/output.mjs index 6daa5d138f..d20f213fcc 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-spread/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-spread/output.mjs @@ -1,4 +1,2 @@ -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; a = [b, ...c]; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator-in/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator-in/output.mjs index 8a311de5ef..217ea90292 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator-in/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator-in/output.mjs @@ -1,8 +1,2 @@ -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; Symbol.iterator in arr; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator/output.mjs index feae518cc1..010a989dfc 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator/output.mjs +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-symbol-iterator/output.mjs @@ -1,8 +1,2 @@ -import "core-js/modules/es.symbol.iterator.js"; -import "core-js/modules/es.object.to-string.js"; -import "core-js/modules/es.string.iterator.js"; -import "core-js/modules/es.array.iterator.js"; import "core-js/modules/web.dom-collections.iterator.js"; -import "core-js/modules/es.symbol.js"; -import "core-js/modules/es.symbol.description.js"; arr[Symbol.iterator](); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/.browserslistrc b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/.browserslistrc new file mode 100644 index 0000000000..c1b9aca432 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/.browserslistrc @@ -0,0 +1,2 @@ +[custom] +ie 11 \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/input.mjs new file mode 100644 index 0000000000..c3fee8a175 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/input.mjs @@ -0,0 +1 @@ +import "core-js"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/options.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/options.js new file mode 100644 index 0000000000..37fa9d228b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/options.js @@ -0,0 +1,14 @@ +module.exports = { + validateLogs: true, + ignoreOutput: true, + presets: [ + [ + "env", + { + debug: true, + browserslistEnv: "custom", + configPath: __dirname, + }, + ], + ], +}; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/stdout.txt new file mode 100644 index 0000000000..898343c6bd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslist-env/stdout.txt @@ -0,0 +1,48 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "ie":"11" } + proposal-logical-assignment-operators { "ie":"11" } + proposal-nullish-coalescing-operator { "ie":"11" } + proposal-optional-chaining { "ie":"11" } + proposal-json-strings { "ie":"11" } + proposal-optional-catch-binding { "ie":"11" } + transform-parameters { "ie":"11" } + proposal-async-generator-functions { "ie":"11" } + proposal-object-rest-spread { "ie":"11" } + transform-dotall-regex { "ie":"11" } + proposal-unicode-property-regex { "ie":"11" } + transform-named-capturing-groups-regex { "ie":"11" } + transform-async-to-generator { "ie":"11" } + transform-exponentiation-operator { "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "ie":"11" } + transform-function-name { "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "ie":"11" } + transform-block-scoping { "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "ie":"11" } + proposal-export-namespace-from { "ie":"11" } + transform-modules-commonjs { "ie":"11" } + proposal-dynamic-import { "ie":"11" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/input.mjs new file mode 100644 index 0000000000..c3fee8a175 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/input.mjs @@ -0,0 +1 @@ +import "core-js"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/options.json new file mode 100644 index 0000000000..b8ccf9b247 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": [ + "android 3" + ] + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/stdout.txt new file mode 100644 index 0000000000..e4d3f42c15 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-android-3/stdout.txt @@ -0,0 +1,52 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "3" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "android":"3" } + proposal-logical-assignment-operators { "android":"3" } + proposal-nullish-coalescing-operator { "android":"3" } + proposal-optional-chaining { "android":"3" } + proposal-json-strings { "android":"3" } + proposal-optional-catch-binding { "android":"3" } + transform-parameters { "android":"3" } + proposal-async-generator-functions { "android":"3" } + proposal-object-rest-spread { "android":"3" } + transform-dotall-regex { "android":"3" } + proposal-unicode-property-regex { "android":"3" } + transform-named-capturing-groups-regex { "android":"3" } + transform-async-to-generator { "android":"3" } + transform-exponentiation-operator { "android":"3" } + transform-template-literals { "android":"3" } + transform-literals { "android":"3" } + transform-function-name { "android":"3" } + transform-arrow-functions { "android":"3" } + transform-block-scoped-functions { "android":"3" } + transform-classes { "android":"3" } + transform-object-super { "android":"3" } + transform-shorthand-properties { "android":"3" } + transform-duplicate-keys { "android":"3" } + transform-computed-properties { "android":"3" } + transform-for-of { "android":"3" } + transform-sticky-regex { "android":"3" } + transform-unicode-escapes { "android":"3" } + transform-unicode-regex { "android":"3" } + transform-spread { "android":"3" } + transform-destructuring { "android":"3" } + transform-block-scoping { "android":"3" } + transform-typeof-symbol { "android":"3" } + transform-new-target { "android":"3" } + transform-regenerator { "android":"3" } + transform-member-expression-literals { "android":"3" } + transform-property-literals { "android":"3" } + transform-reserved-words { "android":"3" } + proposal-export-namespace-from { "android":"3" } + transform-modules-commonjs { "android":"3" } + proposal-dynamic-import { "android":"3" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/input.mjs new file mode 100644 index 0000000000..c3fee8a175 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/input.mjs @@ -0,0 +1 @@ +import "core-js"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/options.json new file mode 100644 index 0000000000..8bbb1c0f23 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": [ + "defaults", + "not ie 11", + "not ie_mob 11" + ] + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt new file mode 100644 index 0000000000..6347c7beeb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt @@ -0,0 +1,31 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "ios":"12.2" } + proposal-logical-assignment-operators { "chrome":"84", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-nullish-coalescing-operator { "ios":"12.2", "samsung":"11.1" } + proposal-optional-chaining { "ios":"12.2", "samsung":"11.1" } + syntax-json-strings { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + syntax-optional-catch-binding { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + syntax-async-generators { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + syntax-object-rest-spread { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + transform-template-literals { "ios":"12.2" } + proposal-export-namespace-from { "firefox":"78", "ios":"12.2", "safari":"13.1" } + transform-modules-commonjs { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-dynamic-import { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/input.mjs new file mode 100644 index 0000000000..c3fee8a175 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/input.mjs @@ -0,0 +1 @@ +import "core-js"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/options.json new file mode 100644 index 0000000000..b4fbce958e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/options.json @@ -0,0 +1,15 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "defaults" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt new file mode 100644 index 0000000000..a94a88c92c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt @@ -0,0 +1,56 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ie": "11", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "ie":"11", "ios":"12.2" } + proposal-logical-assignment-operators { "chrome":"84", "firefox":"78", "ie":"11", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-nullish-coalescing-operator { "ie":"11", "ios":"12.2", "samsung":"11.1" } + proposal-optional-chaining { "ie":"11", "ios":"12.2", "samsung":"11.1" } + proposal-json-strings { "ie":"11" } + proposal-optional-catch-binding { "ie":"11" } + transform-parameters { "ie":"11" } + proposal-async-generator-functions { "ie":"11" } + proposal-object-rest-spread { "ie":"11" } + transform-dotall-regex { "ie":"11" } + proposal-unicode-property-regex { "ie":"11" } + transform-named-capturing-groups-regex { "ie":"11" } + transform-async-to-generator { "ie":"11" } + transform-exponentiation-operator { "ie":"11" } + transform-template-literals { "ie":"11", "ios":"12.2" } + transform-literals { "ie":"11" } + transform-function-name { "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "ie":"11" } + transform-block-scoping { "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "ie":"11" } + proposal-export-namespace-from { "firefox":"78", "ie":"11", "ios":"12.2", "safari":"13.1" } + transform-modules-commonjs { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ie":"11", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-dynamic-import { "android":"85", "chrome":"84", "edge":"85", "firefox":"78", "ie":"11", "ios":"12.2", "opera":"71", "safari":"13.1", "samsung":"11.1" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/input.mjs new file mode 100644 index 0000000000..c3fee8a175 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/input.mjs @@ -0,0 +1 @@ +import "core-js"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/options.json new file mode 100644 index 0000000000..58797fc7f4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": [ + "last 2 versions", + "not ie <= 11", + "not ie_mob <= 11" + ] + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt new file mode 100644 index 0000000000..2f0240eb6e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt @@ -0,0 +1,30 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "85", + "chrome": "85", + "edge": "85", + "firefox": "81", + "ios": "13.4", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} + +Using modules transform: auto + +Using plugins: + syntax-numeric-separator { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-logical-assignment-operators { "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-nullish-coalescing-operator { "samsung":"11.1" } + proposal-optional-chaining { "samsung":"11.1" } + syntax-json-strings { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + syntax-optional-catch-binding { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + syntax-async-generators { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + syntax-object-rest-spread { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-export-namespace-from { "ios":"13.4", "safari":"13.1" } + transform-modules-commonjs { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + proposal-dynamic-import { "android":"85", "chrome":"85", "edge":"85", "firefox":"81", "ios":"13.4", "opera":"71", "safari":"13.1", "samsung":"11.1" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/input.mjs new file mode 100644 index 0000000000..66bfb4d151 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/input.mjs @@ -0,0 +1 @@ +import 'core-js'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/options.json new file mode 100644 index 0000000000..f0c1a9ad27 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/options.json @@ -0,0 +1,14 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/stderr.txt new file mode 100644 index 0000000000..1600be371d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/stderr.txt @@ -0,0 +1 @@ +WARNING (@babel/preset-env): The `corejs` option only has an effect when the `useBuiltIns` option is not `false` diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/stdout.txt new file mode 100644 index 0000000000..419bc46ff1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/corejs-without-usebuiltins/stdout.txt @@ -0,0 +1,52 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/options.json new file mode 100644 index 0000000000..7c23631533 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": ["Android >= 4"] + }, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/stdout.txt new file mode 100644 index 0000000000..7f326ad02d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/stdout.txt @@ -0,0 +1,175 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "4" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "android":"4" } + proposal-logical-assignment-operators { "android":"4" } + proposal-nullish-coalescing-operator { "android":"4" } + proposal-optional-chaining { "android":"4" } + proposal-json-strings { "android":"4" } + proposal-optional-catch-binding { "android":"4" } + transform-parameters { "android":"4" } + proposal-async-generator-functions { "android":"4" } + proposal-object-rest-spread { "android":"4" } + transform-dotall-regex { "android":"4" } + proposal-unicode-property-regex { "android":"4" } + transform-named-capturing-groups-regex { "android":"4" } + transform-async-to-generator { "android":"4" } + transform-exponentiation-operator { "android":"4" } + transform-template-literals { "android":"4" } + transform-literals { "android":"4" } + transform-function-name { "android":"4" } + transform-arrow-functions { "android":"4" } + transform-block-scoped-functions { "android":"4" } + transform-classes { "android":"4" } + transform-object-super { "android":"4" } + transform-shorthand-properties { "android":"4" } + transform-duplicate-keys { "android":"4" } + transform-computed-properties { "android":"4" } + transform-for-of { "android":"4" } + transform-sticky-regex { "android":"4" } + transform-unicode-escapes { "android":"4" } + transform-unicode-regex { "android":"4" } + transform-spread { "android":"4" } + transform-destructuring { "android":"4" } + transform-block-scoping { "android":"4" } + transform-typeof-symbol { "android":"4" } + transform-new-target { "android":"4" } + transform-regenerator { "android":"4" } + transform-reserved-words { "android":"4" } + proposal-export-namespace-from { "android":"4" } + transform-modules-commonjs { "android":"4" } + proposal-dynamic-import { "android":"4" } +corejs2: `DEBUG` option + +Using targets: { + "android": "4" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-android/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "android":"4" } + es6.array.fill { "android":"4" } + es6.array.filter { "android":"4" } + es6.array.find { "android":"4" } + es6.array.find-index { "android":"4" } + es7.array.flat-map { "android":"4" } + es6.array.from { "android":"4" } + es7.array.includes { "android":"4" } + es6.array.iterator { "android":"4" } + es6.array.map { "android":"4" } + es6.array.of { "android":"4" } + es6.array.slice { "android":"4" } + es6.array.sort { "android":"4" } + es6.array.species { "android":"4" } + es6.date.to-primitive { "android":"4" } + es6.function.has-instance { "android":"4" } + es6.map { "android":"4" } + es6.math.acosh { "android":"4" } + es6.math.asinh { "android":"4" } + es6.math.atanh { "android":"4" } + es6.math.cbrt { "android":"4" } + es6.math.clz32 { "android":"4" } + es6.math.cosh { "android":"4" } + es6.math.expm1 { "android":"4" } + es6.math.fround { "android":"4" } + es6.math.hypot { "android":"4" } + es6.math.imul { "android":"4" } + es6.math.log1p { "android":"4" } + es6.math.log10 { "android":"4" } + es6.math.log2 { "android":"4" } + es6.math.sign { "android":"4" } + es6.math.sinh { "android":"4" } + es6.math.tanh { "android":"4" } + es6.math.trunc { "android":"4" } + es6.number.constructor { "android":"4" } + es6.number.epsilon { "android":"4" } + es6.number.is-finite { "android":"4" } + es6.number.is-integer { "android":"4" } + es6.number.is-nan { "android":"4" } + es6.number.is-safe-integer { "android":"4" } + es6.number.max-safe-integer { "android":"4" } + es6.number.min-safe-integer { "android":"4" } + es6.number.parse-float { "android":"4" } + es6.number.parse-int { "android":"4" } + es6.object.assign { "android":"4" } + es7.object.define-getter { "android":"4" } + es7.object.define-setter { "android":"4" } + es7.object.entries { "android":"4" } + es6.object.freeze { "android":"4" } + es6.object.get-own-property-descriptor { "android":"4" } + es7.object.get-own-property-descriptors { "android":"4" } + es6.object.get-own-property-names { "android":"4" } + es6.object.get-prototype-of { "android":"4" } + es7.object.lookup-getter { "android":"4" } + es7.object.lookup-setter { "android":"4" } + es6.object.prevent-extensions { "android":"4" } + es6.object.to-string { "android":"4" } + es6.object.is { "android":"4" } + es6.object.is-frozen { "android":"4" } + es6.object.is-sealed { "android":"4" } + es6.object.is-extensible { "android":"4" } + es6.object.keys { "android":"4" } + es6.object.seal { "android":"4" } + es6.object.set-prototype-of { "android":"4" } + es7.object.values { "android":"4" } + es6.promise { "android":"4" } + es7.promise.finally { "android":"4" } + es6.reflect.apply { "android":"4" } + es6.reflect.construct { "android":"4" } + es6.reflect.define-property { "android":"4" } + es6.reflect.delete-property { "android":"4" } + es6.reflect.get { "android":"4" } + es6.reflect.get-own-property-descriptor { "android":"4" } + es6.reflect.get-prototype-of { "android":"4" } + es6.reflect.has { "android":"4" } + es6.reflect.is-extensible { "android":"4" } + es6.reflect.own-keys { "android":"4" } + es6.reflect.prevent-extensions { "android":"4" } + es6.reflect.set { "android":"4" } + es6.reflect.set-prototype-of { "android":"4" } + es6.regexp.constructor { "android":"4" } + es6.regexp.flags { "android":"4" } + es6.regexp.match { "android":"4" } + es6.regexp.replace { "android":"4" } + es6.regexp.split { "android":"4" } + es6.regexp.search { "android":"4" } + es6.regexp.to-string { "android":"4" } + es6.set { "android":"4" } + es6.symbol { "android":"4" } + es7.symbol.async-iterator { "android":"4" } + es6.string.code-point-at { "android":"4" } + es6.string.ends-with { "android":"4" } + es6.string.from-code-point { "android":"4" } + es6.string.includes { "android":"4" } + es6.string.iterator { "android":"4" } + es7.string.pad-start { "android":"4" } + es7.string.pad-end { "android":"4" } + es6.string.raw { "android":"4" } + es6.string.repeat { "android":"4" } + es6.string.starts-with { "android":"4" } + es7.string.trim-left { "android":"4" } + es7.string.trim-right { "android":"4" } + es6.typed.array-buffer { "android":"4" } + es6.typed.int8-array { "android":"4" } + es6.typed.uint8-array { "android":"4" } + es6.typed.uint8-clamped-array { "android":"4" } + es6.typed.int16-array { "android":"4" } + es6.typed.uint16-array { "android":"4" } + es6.typed.int32-array { "android":"4" } + es6.typed.uint32-array { "android":"4" } + es6.typed.float32-array { "android":"4" } + es6.typed.float64-array { "android":"4" } + es6.weak-map { "android":"4" } + es6.weak-set { "android":"4" } + web.timers { "android":"4" } + web.immediate { "android":"4" } + web.dom.iterable { "android":"4" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/options.json new file mode 100644 index 0000000000..87ebef4f68 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "electron": 0.36 + }, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/stderr.txt new file mode 100644 index 0000000000..a53cf9b179 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/stderr.txt @@ -0,0 +1,6 @@ +Warning, the following targets are using a decimal version: + + electron: 0.36 + +We recommend using a string for minor/patch versions to avoid numbers like 6.10 +getting parsed as 6.1, which can lead to unexpected behavior. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/stdout.txt new file mode 100644 index 0000000000..e213bfaba7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/stdout.txt @@ -0,0 +1,107 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "electron": "0.36" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "electron":"0.36" } + proposal-logical-assignment-operators { "electron":"0.36" } + proposal-nullish-coalescing-operator { "electron":"0.36" } + proposal-optional-chaining { "electron":"0.36" } + proposal-json-strings { "electron":"0.36" } + proposal-optional-catch-binding { "electron":"0.36" } + transform-parameters { "electron":"0.36" } + proposal-async-generator-functions { "electron":"0.36" } + proposal-object-rest-spread { "electron":"0.36" } + transform-dotall-regex { "electron":"0.36" } + proposal-unicode-property-regex { "electron":"0.36" } + transform-named-capturing-groups-regex { "electron":"0.36" } + transform-async-to-generator { "electron":"0.36" } + transform-exponentiation-operator { "electron":"0.36" } + transform-function-name { "electron":"0.36" } + transform-for-of { "electron":"0.36" } + transform-sticky-regex { "electron":"0.36" } + transform-unicode-regex { "electron":"0.36" } + transform-destructuring { "electron":"0.36" } + transform-block-scoping { "electron":"0.36" } + transform-regenerator { "electron":"0.36" } + proposal-export-namespace-from { "electron":"0.36" } + transform-modules-commonjs { "electron":"0.36" } + proposal-dynamic-import { "electron":"0.36" } +corejs2: `DEBUG` option + +Using targets: { + "electron": "0.36" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-electron/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.filter { "electron":"0.36" } + es7.array.flat-map { "electron":"0.36" } + es6.array.from { "electron":"0.36" } + es6.array.iterator { "electron":"0.36" } + es6.array.map { "electron":"0.36" } + es6.array.slice { "electron":"0.36" } + es6.array.sort { "electron":"0.36" } + es6.array.species { "electron":"0.36" } + es6.function.has-instance { "electron":"0.36" } + es6.map { "electron":"0.36" } + es6.object.assign { "electron":"0.36" } + es7.object.define-getter { "electron":"0.36" } + es7.object.define-setter { "electron":"0.36" } + es7.object.entries { "electron":"0.36" } + es7.object.get-own-property-descriptors { "electron":"0.36" } + es7.object.lookup-getter { "electron":"0.36" } + es7.object.lookup-setter { "electron":"0.36" } + es6.object.to-string { "electron":"0.36" } + es7.object.values { "electron":"0.36" } + es6.promise { "electron":"0.36" } + es7.promise.finally { "electron":"0.36" } + es6.reflect.apply { "electron":"0.36" } + es6.reflect.construct { "electron":"0.36" } + es6.reflect.define-property { "electron":"0.36" } + es6.reflect.delete-property { "electron":"0.36" } + es6.reflect.get { "electron":"0.36" } + es6.reflect.get-own-property-descriptor { "electron":"0.36" } + es6.reflect.get-prototype-of { "electron":"0.36" } + es6.reflect.has { "electron":"0.36" } + es6.reflect.is-extensible { "electron":"0.36" } + es6.reflect.own-keys { "electron":"0.36" } + es6.reflect.prevent-extensions { "electron":"0.36" } + es6.reflect.set { "electron":"0.36" } + es6.reflect.set-prototype-of { "electron":"0.36" } + es6.regexp.constructor { "electron":"0.36" } + es6.regexp.flags { "electron":"0.36" } + es6.regexp.match { "electron":"0.36" } + es6.regexp.replace { "electron":"0.36" } + es6.regexp.split { "electron":"0.36" } + es6.regexp.search { "electron":"0.36" } + es6.regexp.to-string { "electron":"0.36" } + es6.set { "electron":"0.36" } + es6.symbol { "electron":"0.36" } + es7.symbol.async-iterator { "electron":"0.36" } + es7.string.pad-start { "electron":"0.36" } + es7.string.pad-end { "electron":"0.36" } + es7.string.trim-left { "electron":"0.36" } + es7.string.trim-right { "electron":"0.36" } + es6.typed.array-buffer { "electron":"0.36" } + es6.typed.int8-array { "electron":"0.36" } + es6.typed.uint8-array { "electron":"0.36" } + es6.typed.uint8-clamped-array { "electron":"0.36" } + es6.typed.int16-array { "electron":"0.36" } + es6.typed.uint16-array { "electron":"0.36" } + es6.typed.int32-array { "electron":"0.36" } + es6.typed.uint32-array { "electron":"0.36" } + es6.typed.float32-array { "electron":"0.36" } + es6.typed.float64-array { "electron":"0.36" } + es6.weak-map { "electron":"0.36" } + es6.weak-set { "electron":"0.36" } + web.timers { "electron":"0.36" } + web.immediate { "electron":"0.36" } + web.dom.iterable { "electron":"0.36" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/options.json new file mode 100644 index 0000000000..63316b736f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "modules": false, + "targets": { + "chrome": 55 + }, + "useBuiltIns": "entry", + "corejs": 2, + "forceAllTransforms": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/stdout.txt new file mode 100644 index 0000000000..17f15e4abe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/stdout.txt @@ -0,0 +1,76 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "55" +} + +Using modules transform: false + +Using plugins: + proposal-numeric-separator { "chrome":"55" } + proposal-logical-assignment-operators { "chrome":"55" } + proposal-nullish-coalescing-operator { "chrome":"55" } + proposal-optional-chaining { "chrome":"55" } + proposal-json-strings { "chrome":"55" } + proposal-optional-catch-binding { "chrome":"55" } + transform-parameters {} + proposal-async-generator-functions { "chrome":"55" } + proposal-object-rest-spread { "chrome":"55" } + transform-dotall-regex { "chrome":"55" } + proposal-unicode-property-regex { "chrome":"55" } + transform-named-capturing-groups-regex { "chrome":"55" } + transform-async-to-generator {} + transform-exponentiation-operator {} + transform-template-literals {} + transform-literals {} + transform-function-name {} + transform-arrow-functions {} + transform-block-scoped-functions {} + transform-classes {} + transform-object-super {} + transform-shorthand-properties {} + transform-duplicate-keys {} + transform-computed-properties {} + transform-for-of {} + transform-sticky-regex {} + transform-unicode-escapes {} + transform-unicode-regex {} + transform-spread {} + transform-destructuring {} + transform-block-scoping {} + transform-typeof-symbol {} + transform-new-target {} + transform-regenerator {} + transform-member-expression-literals {} + transform-property-literals {} + transform-reserved-words {} + proposal-export-namespace-from { "chrome":"55" } + syntax-dynamic-import { "chrome":"55" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "55" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-force-all-transforms/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es7.array.flat-map { "chrome":"55" } + es6.array.iterator { "chrome":"55" } + es6.array.sort { "chrome":"55" } + es7.object.define-getter { "chrome":"55" } + es7.object.define-setter { "chrome":"55" } + es7.object.lookup-getter { "chrome":"55" } + es7.object.lookup-setter { "chrome":"55" } + es6.object.to-string { "chrome":"55" } + es7.promise.finally { "chrome":"55" } + es7.symbol.async-iterator { "chrome":"55" } + es7.string.pad-start { "chrome":"55" } + es7.string.pad-end { "chrome":"55" } + es7.string.trim-left { "chrome":"55" } + es7.string.trim-right { "chrome":"55" } + web.timers { "chrome":"55" } + web.immediate { "chrome":"55" } + web.dom.iterable { "chrome":"55" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/input.js new file mode 100644 index 0000000000..e31333abc5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/input.js @@ -0,0 +1 @@ +function hasAnyoneSeenImportBabelPolyfill() { return false }; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/options.json new file mode 100644 index 0000000000..c1bb48f690 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "node": 6 + }, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/stdout.txt new file mode 100644 index 0000000000..688b3f526a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/stdout.txt @@ -0,0 +1,39 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "node": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "node":"6" } + proposal-logical-assignment-operators { "node":"6" } + proposal-nullish-coalescing-operator { "node":"6" } + proposal-optional-chaining { "node":"6" } + proposal-json-strings { "node":"6" } + proposal-optional-catch-binding { "node":"6" } + proposal-async-generator-functions { "node":"6" } + proposal-object-rest-spread { "node":"6" } + transform-dotall-regex { "node":"6" } + proposal-unicode-property-regex { "node":"6" } + transform-named-capturing-groups-regex { "node":"6" } + transform-async-to-generator { "node":"6" } + transform-exponentiation-operator { "node":"6" } + transform-function-name { "node":"6" } + transform-for-of { "node":"6" } + transform-destructuring { "node":"6" } + proposal-export-namespace-from { "node":"6" } + transform-modules-commonjs { "node":"6" } + proposal-dynamic-import { "node":"6" } +corejs2: `DEBUG` option + +Using targets: { + "node": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-no-import/input.js] +The entry point for the corejs2 polyfill has not been found. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/options.json new file mode 100644 index 0000000000..c40fbcce5f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "useBuiltIns": "entry", + "corejs": { "version": 2, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/stdout.txt new file mode 100644 index 0000000000..6cf5f4388a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/stdout.txt @@ -0,0 +1,34 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals-chrome-71/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + web.timers { "chrome":"71" } + web.immediate { "chrome":"71" } + web.dom.iterable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/options.json new file mode 100644 index 0000000000..89f8b8656e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/options.json @@ -0,0 +1,15 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "useBuiltIns": "entry", + "targets": { "browsers": "ie 6" }, + "corejs": { "version": 2, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/stdout.txt new file mode 100644 index 0000000000..62b56fe1b0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/stdout.txt @@ -0,0 +1,209 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs2: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-proposals/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "ie":"6" } + es6.array.every { "ie":"6" } + es6.array.fill { "ie":"6" } + es6.array.filter { "ie":"6" } + es6.array.find { "ie":"6" } + es6.array.find-index { "ie":"6" } + es7.array.flat-map { "ie":"6" } + es6.array.for-each { "ie":"6" } + es6.array.from { "ie":"6" } + es7.array.includes { "ie":"6" } + es6.array.index-of { "ie":"6" } + es6.array.is-array { "ie":"6" } + es6.array.iterator { "ie":"6" } + es6.array.last-index-of { "ie":"6" } + es6.array.map { "ie":"6" } + es6.array.of { "ie":"6" } + es6.array.reduce { "ie":"6" } + es6.array.reduce-right { "ie":"6" } + es6.array.slice { "ie":"6" } + es6.array.some { "ie":"6" } + es6.array.sort { "ie":"6" } + es6.array.species { "ie":"6" } + es6.date.now { "ie":"6" } + es6.date.to-iso-string { "ie":"6" } + es6.date.to-json { "ie":"6" } + es6.date.to-primitive { "ie":"6" } + es6.date.to-string { "ie":"6" } + es6.function.bind { "ie":"6" } + es6.function.has-instance { "ie":"6" } + es6.function.name { "ie":"6" } + es6.map { "ie":"6" } + es6.math.acosh { "ie":"6" } + es6.math.asinh { "ie":"6" } + es6.math.atanh { "ie":"6" } + es6.math.cbrt { "ie":"6" } + es6.math.clz32 { "ie":"6" } + es6.math.cosh { "ie":"6" } + es6.math.expm1 { "ie":"6" } + es6.math.fround { "ie":"6" } + es6.math.hypot { "ie":"6" } + es6.math.imul { "ie":"6" } + es6.math.log1p { "ie":"6" } + es6.math.log10 { "ie":"6" } + es6.math.log2 { "ie":"6" } + es6.math.sign { "ie":"6" } + es6.math.sinh { "ie":"6" } + es6.math.tanh { "ie":"6" } + es6.math.trunc { "ie":"6" } + es6.number.constructor { "ie":"6" } + es6.number.epsilon { "ie":"6" } + es6.number.is-finite { "ie":"6" } + es6.number.is-integer { "ie":"6" } + es6.number.is-nan { "ie":"6" } + es6.number.is-safe-integer { "ie":"6" } + es6.number.max-safe-integer { "ie":"6" } + es6.number.min-safe-integer { "ie":"6" } + es6.number.parse-float { "ie":"6" } + es6.number.parse-int { "ie":"6" } + es6.object.assign { "ie":"6" } + es6.object.create { "ie":"6" } + es7.object.define-getter { "ie":"6" } + es7.object.define-setter { "ie":"6" } + es6.object.define-property { "ie":"6" } + es6.object.define-properties { "ie":"6" } + es7.object.entries { "ie":"6" } + es6.object.freeze { "ie":"6" } + es6.object.get-own-property-descriptor { "ie":"6" } + es7.object.get-own-property-descriptors { "ie":"6" } + es6.object.get-own-property-names { "ie":"6" } + es6.object.get-prototype-of { "ie":"6" } + es7.object.lookup-getter { "ie":"6" } + es7.object.lookup-setter { "ie":"6" } + es6.object.prevent-extensions { "ie":"6" } + es6.object.to-string { "ie":"6" } + es6.object.is { "ie":"6" } + es6.object.is-frozen { "ie":"6" } + es6.object.is-sealed { "ie":"6" } + es6.object.is-extensible { "ie":"6" } + es6.object.keys { "ie":"6" } + es6.object.seal { "ie":"6" } + es6.object.set-prototype-of { "ie":"6" } + es7.object.values { "ie":"6" } + es6.promise { "ie":"6" } + es7.promise.finally { "ie":"6" } + es6.reflect.apply { "ie":"6" } + es6.reflect.construct { "ie":"6" } + es6.reflect.define-property { "ie":"6" } + es6.reflect.delete-property { "ie":"6" } + es6.reflect.get { "ie":"6" } + es6.reflect.get-own-property-descriptor { "ie":"6" } + es6.reflect.get-prototype-of { "ie":"6" } + es6.reflect.has { "ie":"6" } + es6.reflect.is-extensible { "ie":"6" } + es6.reflect.own-keys { "ie":"6" } + es6.reflect.prevent-extensions { "ie":"6" } + es6.reflect.set { "ie":"6" } + es6.reflect.set-prototype-of { "ie":"6" } + es6.regexp.constructor { "ie":"6" } + es6.regexp.flags { "ie":"6" } + es6.regexp.match { "ie":"6" } + es6.regexp.replace { "ie":"6" } + es6.regexp.split { "ie":"6" } + es6.regexp.search { "ie":"6" } + es6.regexp.to-string { "ie":"6" } + es6.set { "ie":"6" } + es6.symbol { "ie":"6" } + es7.symbol.async-iterator { "ie":"6" } + es6.string.anchor { "ie":"6" } + es6.string.big { "ie":"6" } + es6.string.blink { "ie":"6" } + es6.string.bold { "ie":"6" } + es6.string.code-point-at { "ie":"6" } + es6.string.ends-with { "ie":"6" } + es6.string.fixed { "ie":"6" } + es6.string.fontcolor { "ie":"6" } + es6.string.fontsize { "ie":"6" } + es6.string.from-code-point { "ie":"6" } + es6.string.includes { "ie":"6" } + es6.string.italics { "ie":"6" } + es6.string.iterator { "ie":"6" } + es6.string.link { "ie":"6" } + es7.string.pad-start { "ie":"6" } + es7.string.pad-end { "ie":"6" } + es6.string.raw { "ie":"6" } + es6.string.repeat { "ie":"6" } + es6.string.small { "ie":"6" } + es6.string.starts-with { "ie":"6" } + es6.string.strike { "ie":"6" } + es6.string.sub { "ie":"6" } + es6.string.sup { "ie":"6" } + es6.string.trim { "ie":"6" } + es7.string.trim-left { "ie":"6" } + es7.string.trim-right { "ie":"6" } + es6.typed.array-buffer { "ie":"6" } + es6.typed.data-view { "ie":"6" } + es6.typed.int8-array { "ie":"6" } + es6.typed.uint8-array { "ie":"6" } + es6.typed.uint8-clamped-array { "ie":"6" } + es6.typed.int16-array { "ie":"6" } + es6.typed.uint16-array { "ie":"6" } + es6.typed.int32-array { "ie":"6" } + es6.typed.uint32-array { "ie":"6" } + es6.typed.float32-array { "ie":"6" } + es6.typed.float64-array { "ie":"6" } + es6.weak-map { "ie":"6" } + es6.weak-set { "ie":"6" } + web.timers { "ie":"6" } + web.immediate { "ie":"6" } + web.dom.iterable { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/options.json new file mode 100644 index 0000000000..eca9a1a603 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt new file mode 100644 index 0000000000..089224bc21 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt @@ -0,0 +1,36 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + web.timers { "chrome":"71" } + web.immediate { "chrome":"71" } + web.dom.iterable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/options.json new file mode 100644 index 0000000000..5c91ddb39a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt new file mode 100644 index 0000000000..d6cfc1f166 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt @@ -0,0 +1,211 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs2: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "ie":"6" } + es6.array.every { "ie":"6" } + es6.array.fill { "ie":"6" } + es6.array.filter { "ie":"6" } + es6.array.find { "ie":"6" } + es6.array.find-index { "ie":"6" } + es7.array.flat-map { "ie":"6" } + es6.array.for-each { "ie":"6" } + es6.array.from { "ie":"6" } + es7.array.includes { "ie":"6" } + es6.array.index-of { "ie":"6" } + es6.array.is-array { "ie":"6" } + es6.array.iterator { "ie":"6" } + es6.array.last-index-of { "ie":"6" } + es6.array.map { "ie":"6" } + es6.array.of { "ie":"6" } + es6.array.reduce { "ie":"6" } + es6.array.reduce-right { "ie":"6" } + es6.array.slice { "ie":"6" } + es6.array.some { "ie":"6" } + es6.array.sort { "ie":"6" } + es6.array.species { "ie":"6" } + es6.date.now { "ie":"6" } + es6.date.to-iso-string { "ie":"6" } + es6.date.to-json { "ie":"6" } + es6.date.to-primitive { "ie":"6" } + es6.date.to-string { "ie":"6" } + es6.function.bind { "ie":"6" } + es6.function.has-instance { "ie":"6" } + es6.function.name { "ie":"6" } + es6.map { "ie":"6" } + es6.math.acosh { "ie":"6" } + es6.math.asinh { "ie":"6" } + es6.math.atanh { "ie":"6" } + es6.math.cbrt { "ie":"6" } + es6.math.clz32 { "ie":"6" } + es6.math.cosh { "ie":"6" } + es6.math.expm1 { "ie":"6" } + es6.math.fround { "ie":"6" } + es6.math.hypot { "ie":"6" } + es6.math.imul { "ie":"6" } + es6.math.log1p { "ie":"6" } + es6.math.log10 { "ie":"6" } + es6.math.log2 { "ie":"6" } + es6.math.sign { "ie":"6" } + es6.math.sinh { "ie":"6" } + es6.math.tanh { "ie":"6" } + es6.math.trunc { "ie":"6" } + es6.number.constructor { "ie":"6" } + es6.number.epsilon { "ie":"6" } + es6.number.is-finite { "ie":"6" } + es6.number.is-integer { "ie":"6" } + es6.number.is-nan { "ie":"6" } + es6.number.is-safe-integer { "ie":"6" } + es6.number.max-safe-integer { "ie":"6" } + es6.number.min-safe-integer { "ie":"6" } + es6.number.parse-float { "ie":"6" } + es6.number.parse-int { "ie":"6" } + es6.object.assign { "ie":"6" } + es6.object.create { "ie":"6" } + es7.object.define-getter { "ie":"6" } + es7.object.define-setter { "ie":"6" } + es6.object.define-property { "ie":"6" } + es6.object.define-properties { "ie":"6" } + es7.object.entries { "ie":"6" } + es6.object.freeze { "ie":"6" } + es6.object.get-own-property-descriptor { "ie":"6" } + es7.object.get-own-property-descriptors { "ie":"6" } + es6.object.get-own-property-names { "ie":"6" } + es6.object.get-prototype-of { "ie":"6" } + es7.object.lookup-getter { "ie":"6" } + es7.object.lookup-setter { "ie":"6" } + es6.object.prevent-extensions { "ie":"6" } + es6.object.to-string { "ie":"6" } + es6.object.is { "ie":"6" } + es6.object.is-frozen { "ie":"6" } + es6.object.is-sealed { "ie":"6" } + es6.object.is-extensible { "ie":"6" } + es6.object.keys { "ie":"6" } + es6.object.seal { "ie":"6" } + es6.object.set-prototype-of { "ie":"6" } + es7.object.values { "ie":"6" } + es6.promise { "ie":"6" } + es7.promise.finally { "ie":"6" } + es6.reflect.apply { "ie":"6" } + es6.reflect.construct { "ie":"6" } + es6.reflect.define-property { "ie":"6" } + es6.reflect.delete-property { "ie":"6" } + es6.reflect.get { "ie":"6" } + es6.reflect.get-own-property-descriptor { "ie":"6" } + es6.reflect.get-prototype-of { "ie":"6" } + es6.reflect.has { "ie":"6" } + es6.reflect.is-extensible { "ie":"6" } + es6.reflect.own-keys { "ie":"6" } + es6.reflect.prevent-extensions { "ie":"6" } + es6.reflect.set { "ie":"6" } + es6.reflect.set-prototype-of { "ie":"6" } + es6.regexp.constructor { "ie":"6" } + es6.regexp.flags { "ie":"6" } + es6.regexp.match { "ie":"6" } + es6.regexp.replace { "ie":"6" } + es6.regexp.split { "ie":"6" } + es6.regexp.search { "ie":"6" } + es6.regexp.to-string { "ie":"6" } + es6.set { "ie":"6" } + es6.symbol { "ie":"6" } + es7.symbol.async-iterator { "ie":"6" } + es6.string.anchor { "ie":"6" } + es6.string.big { "ie":"6" } + es6.string.blink { "ie":"6" } + es6.string.bold { "ie":"6" } + es6.string.code-point-at { "ie":"6" } + es6.string.ends-with { "ie":"6" } + es6.string.fixed { "ie":"6" } + es6.string.fontcolor { "ie":"6" } + es6.string.fontsize { "ie":"6" } + es6.string.from-code-point { "ie":"6" } + es6.string.includes { "ie":"6" } + es6.string.italics { "ie":"6" } + es6.string.iterator { "ie":"6" } + es6.string.link { "ie":"6" } + es7.string.pad-start { "ie":"6" } + es7.string.pad-end { "ie":"6" } + es6.string.raw { "ie":"6" } + es6.string.repeat { "ie":"6" } + es6.string.small { "ie":"6" } + es6.string.starts-with { "ie":"6" } + es6.string.strike { "ie":"6" } + es6.string.sub { "ie":"6" } + es6.string.sup { "ie":"6" } + es6.string.trim { "ie":"6" } + es7.string.trim-left { "ie":"6" } + es7.string.trim-right { "ie":"6" } + es6.typed.array-buffer { "ie":"6" } + es6.typed.data-view { "ie":"6" } + es6.typed.int8-array { "ie":"6" } + es6.typed.uint8-array { "ie":"6" } + es6.typed.uint8-clamped-array { "ie":"6" } + es6.typed.int16-array { "ie":"6" } + es6.typed.uint16-array { "ie":"6" } + es6.typed.int32-array { "ie":"6" } + es6.typed.uint32-array { "ie":"6" } + es6.typed.float32-array { "ie":"6" } + es6.typed.float64-array { "ie":"6" } + es6.weak-map { "ie":"6" } + es6.weak-set { "ie":"6" } + web.timers { "ie":"6" } + web.immediate { "ie":"6" } + web.dom.iterable { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/options.json new file mode 100644 index 0000000000..2c036f8e4d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "ie 10, ios 9, safari 7, edge 13, chrome 54, firefox 49" + }, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/stdout.txt new file mode 100644 index 0000000000..cd505bc82f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/stdout.txt @@ -0,0 +1,199 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "edge": "13", + "firefox": "49", + "ie": "10", + "ios": "9", + "safari": "7" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-logical-assignment-operators { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-nullish-coalescing-operator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-optional-chaining { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-json-strings { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-optional-catch-binding { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-parameters { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-async-generator-functions { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-object-rest-spread { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-dotall-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-unicode-property-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-named-capturing-groups-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-async-to-generator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-exponentiation-operator { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-template-literals { "ie":"10", "ios":"9", "safari":"7" } + transform-literals { "firefox":"49", "ie":"10", "safari":"7" } + transform-function-name { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-arrow-functions { "ie":"10", "ios":"9", "safari":"7" } + transform-block-scoped-functions { "ie":"10", "ios":"9", "safari":"7" } + transform-classes { "ie":"10", "ios":"9", "safari":"7" } + transform-object-super { "ie":"10", "ios":"9", "safari":"7" } + transform-shorthand-properties { "ie":"10", "safari":"7" } + transform-duplicate-keys { "ie":"10", "safari":"7" } + transform-computed-properties { "ie":"10", "safari":"7" } + transform-for-of { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-sticky-regex { "ie":"10", "ios":"9", "safari":"7" } + transform-unicode-escapes { "firefox":"49", "ie":"10", "safari":"7" } + transform-unicode-regex { "ie":"10", "ios":"9", "safari":"7" } + transform-spread { "ie":"10", "ios":"9", "safari":"7" } + transform-destructuring { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-block-scoping { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-typeof-symbol { "ie":"10", "safari":"7" } + transform-new-target { "edge":"13", "ie":"10", "ios":"9", "safari":"7" } + transform-regenerator { "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-export-namespace-from { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-modules-commonjs { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-dynamic-import { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "54", + "edge": "13", + "firefox": "49", + "ie": "10", + "ios": "9", + "safari": "7" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-specific-targets/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.fill { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.filter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.find { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.find-index { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.array.flat-map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.from { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.array.includes { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.slice { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.sort { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.array.species { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.date.to-json { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.date.to-primitive { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.function.has-instance { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.function.name { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.acosh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.asinh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.atanh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.cbrt { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.clz32 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.cosh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.expm1 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.fround { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.hypot { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.imul { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.log1p { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.log10 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.log2 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.sign { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.sinh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.tanh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.math.trunc { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.constructor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.epsilon { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.is-finite { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.is-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.is-nan { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.is-safe-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.max-safe-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.min-safe-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.parse-float { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.number.parse-int { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.assign { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.define-getter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.define-setter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.entries { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.freeze { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.get-own-property-descriptor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.get-own-property-descriptors { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.get-own-property-names { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.get-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.lookup-getter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.lookup-setter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.prevent-extensions { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.to-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.is { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.is-frozen { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.is-sealed { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.is-extensible { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.keys { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.seal { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.object.set-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.object.values { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.promise { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.promise.finally { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.apply { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.construct { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.define-property { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.delete-property { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.get { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.get-own-property-descriptor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.get-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.has { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.is-extensible { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.own-keys { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.prevent-extensions { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.reflect.set-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.constructor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.flags { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.match { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.replace { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.split { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.search { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.regexp.to-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.symbol { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.symbol.async-iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.anchor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.big { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.blink { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.bold { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.code-point-at { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.ends-with { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.fixed { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.fontcolor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.fontsize { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.from-code-point { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.includes { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.italics { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.link { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.string.pad-start { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.string.pad-end { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.raw { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.repeat { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.small { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.starts-with { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.strike { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.sub { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.string.sup { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.string.trim-left { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es7.string.trim-right { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.array-buffer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.int8-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.uint8-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.uint8-clamped-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.int16-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.uint16-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.int32-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.uint32-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.float32-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.typed.float64-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.weak-map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es6.weak-set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.timers { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.immediate { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.dom.iterable { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/options.json new file mode 100644 index 0000000000..637bfdfe84 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/options.json @@ -0,0 +1,20 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "useBuiltIns": "entry", + "corejs": 2, + "debug": true, + "targets": { + "chrome": 54, + "electron": 0.36, + "node": 6.1, + "ie": 10 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/stderr.txt new file mode 100644 index 0000000000..290f78ce20 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/stderr.txt @@ -0,0 +1,7 @@ +Warning, the following targets are using a decimal version: + + electron: 0.36 + node: 6.1 + +We recommend using a string for minor/patch versions to avoid numbers like 6.10 +getting parsed as 6.1, which can lead to unexpected behavior. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/stdout.txt new file mode 100644 index 0000000000..c3a8b2a499 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/stdout.txt @@ -0,0 +1,194 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "electron": "0.36", + "ie": "10", + "node": "6.1" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-logical-assignment-operators { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-nullish-coalescing-operator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-optional-chaining { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-json-strings { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-optional-catch-binding { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-parameters { "electron":"0.36", "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-object-rest-spread { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-dotall-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-unicode-property-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-named-capturing-groups-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-async-to-generator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-exponentiation-operator { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-sticky-regex { "electron":"0.36", "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "electron":"0.36", "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-block-scoping { "electron":"0.36", "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "electron":"0.36", "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-modules-commonjs { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-dynamic-import { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "54", + "electron": "0.36", + "ie": "10", + "node": "6.1" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-decimals/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.fill { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.filter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.find { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.find-index { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.array.flat-map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.from { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.array.includes { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.slice { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.sort { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.array.species { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.date.to-primitive { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.function.has-instance { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.function.name { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.acosh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.asinh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.atanh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.cbrt { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.clz32 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.cosh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.expm1 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.fround { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.hypot { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.imul { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.log1p { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.log10 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.log2 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.sign { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.sinh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.tanh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.math.trunc { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.constructor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.epsilon { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.is-finite { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.is-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.is-nan { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.is-safe-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.max-safe-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.min-safe-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.parse-float { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.number.parse-int { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.assign { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.define-getter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.define-setter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.entries { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.freeze { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.get-own-property-descriptor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.get-own-property-descriptors { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.get-own-property-names { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.get-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.lookup-getter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.lookup-setter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.prevent-extensions { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.to-string { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.is { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.is-frozen { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.is-sealed { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.is-extensible { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.keys { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.seal { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.object.set-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.object.values { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.promise { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.promise.finally { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.apply { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.construct { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.define-property { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.delete-property { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.get { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.get-own-property-descriptor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.get-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.has { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.is-extensible { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.own-keys { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.prevent-extensions { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.reflect.set-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.constructor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.flags { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.match { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.replace { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.split { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.search { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.regexp.to-string { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.symbol { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.symbol.async-iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.anchor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.big { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.blink { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.bold { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.code-point-at { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.ends-with { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.fixed { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.fontcolor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.fontsize { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.from-code-point { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.includes { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.italics { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.link { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.string.pad-start { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.string.pad-end { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.raw { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.repeat { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.small { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.starts-with { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.strike { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.sub { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.string.sup { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.string.trim-left { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es7.string.trim-right { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.array-buffer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.int8-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.uint8-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.uint8-clamped-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.int16-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.uint16-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.int32-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.uint32-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.float32-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.typed.float64-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.weak-map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es6.weak-set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.timers { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.immediate { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.dom.iterable { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/options.json new file mode 100644 index 0000000000..7fcba34b83 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "useBuiltIns": "entry", + "corejs": 2, + "debug": true, + "targets": { + "chrome": "54", + "node": "6.10", + "ie": "10" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/stdout.txt new file mode 100644 index 0000000000..5c8d068417 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/stdout.txt @@ -0,0 +1,192 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6.10" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6.10" } + transform-exponentiation-operator { "ie":"10", "node":"6.10" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6.10" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-versions-strings/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es7.array.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es7.array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es6.array.species { "chrome":"54", "ie":"10", "node":"6.10" } + es6.date.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es6.function.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es6.function.name { "chrome":"54", "ie":"10", "node":"6.10" } + es6.map { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.acosh { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.asinh { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.atanh { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.cbrt { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.clz32 { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.cosh { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.expm1 { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.fround { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.hypot { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.imul { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.log1p { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.log10 { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.log2 { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.sign { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.sinh { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.tanh { "chrome":"54", "ie":"10", "node":"6.10" } + es6.math.trunc { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.epsilon { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.is-finite { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.is-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.is-nan { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.parse-float { "chrome":"54", "ie":"10", "node":"6.10" } + es6.number.parse-int { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.assign { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.define-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.define-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.entries { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.freeze { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.is { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.is-frozen { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.is-sealed { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.keys { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.seal { "chrome":"54", "ie":"10", "node":"6.10" } + es6.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es7.object.values { "chrome":"54", "ie":"10", "node":"6.10" } + es6.promise { "chrome":"54", "ie":"10", "node":"6.10" } + es7.promise.finally { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.apply { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.construct { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.define-property { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.get { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.has { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.set { "chrome":"54", "ie":"10", "node":"6.10" } + es6.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.flags { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.match { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.split { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.search { "chrome":"54", "ie":"10", "node":"6.10" } + es6.regexp.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es6.set { "chrome":"54", "ie":"10", "node":"6.10" } + es6.symbol { "chrome":"54", "ie":"10", "node":"6.10" } + es7.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.anchor { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.big { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.blink { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.bold { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.code-point-at { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.ends-with { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.fontcolor { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.fontsize { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.from-code-point { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.italics { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.link { "chrome":"54", "ie":"10", "node":"6.10" } + es7.string.pad-start { "chrome":"54", "ie":"10", "node":"6.10" } + es7.string.pad-end { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.raw { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.repeat { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.small { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.starts-with { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.strike { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.sub { "chrome":"54", "ie":"10", "node":"6.10" } + es6.string.sup { "chrome":"54", "ie":"10", "node":"6.10" } + es7.string.trim-left { "chrome":"54", "ie":"10", "node":"6.10" } + es7.string.trim-right { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.array-buffer { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.int8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.uint8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.int16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.uint16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.int32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.uint32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.float32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.typed.float64-array { "chrome":"54", "ie":"10", "node":"6.10" } + es6.weak-map { "chrome":"54", "ie":"10", "node":"6.10" } + es6.weak-set { "chrome":"54", "ie":"10", "node":"6.10" } + web.timers { "chrome":"54", "ie":"10", "node":"6.10" } + web.immediate { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom.iterable { "chrome":"54", "ie":"10", "node":"6.10" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/options.json new file mode 100644 index 0000000000..e8cc67c9ac --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome >= 54, ie 10", + "node": 6 + }, + "useBuiltIns": "entry", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/stdout.txt new file mode 100644 index 0000000000..12a590c97f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/stdout.txt @@ -0,0 +1,192 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6" } + transform-exponentiation-operator { "ie":"10", "node":"6" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10", "node":"6" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10", "node":"6" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10", "node":"6" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "chrome":"54", "ie":"10", "node":"6" } + es6.array.fill { "chrome":"54", "ie":"10", "node":"6" } + es6.array.filter { "chrome":"54", "ie":"10", "node":"6" } + es6.array.find { "chrome":"54", "ie":"10", "node":"6" } + es6.array.find-index { "chrome":"54", "ie":"10", "node":"6" } + es7.array.flat-map { "chrome":"54", "ie":"10", "node":"6" } + es6.array.from { "chrome":"54", "ie":"10", "node":"6" } + es7.array.includes { "chrome":"54", "ie":"10", "node":"6" } + es6.array.iterator { "chrome":"54", "ie":"10", "node":"6" } + es6.array.map { "chrome":"54", "ie":"10", "node":"6" } + es6.array.of { "chrome":"54", "ie":"10", "node":"6" } + es6.array.slice { "chrome":"54", "ie":"10", "node":"6" } + es6.array.sort { "chrome":"54", "ie":"10", "node":"6" } + es6.array.species { "chrome":"54", "ie":"10", "node":"6" } + es6.date.to-primitive { "chrome":"54", "ie":"10", "node":"6" } + es6.function.has-instance { "chrome":"54", "ie":"10", "node":"6" } + es6.function.name { "chrome":"54", "ie":"10", "node":"6" } + es6.map { "chrome":"54", "ie":"10", "node":"6" } + es6.math.acosh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.asinh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.atanh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.cbrt { "chrome":"54", "ie":"10", "node":"6" } + es6.math.clz32 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.cosh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.expm1 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.fround { "chrome":"54", "ie":"10", "node":"6" } + es6.math.hypot { "chrome":"54", "ie":"10", "node":"6" } + es6.math.imul { "chrome":"54", "ie":"10", "node":"6" } + es6.math.log1p { "chrome":"54", "ie":"10", "node":"6" } + es6.math.log10 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.log2 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.sign { "chrome":"54", "ie":"10", "node":"6" } + es6.math.sinh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.tanh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.trunc { "chrome":"54", "ie":"10", "node":"6" } + es6.number.constructor { "chrome":"54", "ie":"10", "node":"6" } + es6.number.epsilon { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-finite { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-nan { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.parse-float { "chrome":"54", "ie":"10", "node":"6" } + es6.number.parse-int { "chrome":"54", "ie":"10", "node":"6" } + es6.object.assign { "chrome":"54", "ie":"10", "node":"6" } + es7.object.define-getter { "chrome":"54", "ie":"10", "node":"6" } + es7.object.define-setter { "chrome":"54", "ie":"10", "node":"6" } + es7.object.entries { "chrome":"54", "ie":"10", "node":"6" } + es6.object.freeze { "chrome":"54", "ie":"10", "node":"6" } + es6.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6" } + es7.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6" } + es6.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6" } + es6.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es7.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6" } + es7.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6" } + es6.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6" } + es6.object.to-string { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is-frozen { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is-sealed { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is-extensible { "chrome":"54", "ie":"10", "node":"6" } + es6.object.keys { "chrome":"54", "ie":"10", "node":"6" } + es6.object.seal { "chrome":"54", "ie":"10", "node":"6" } + es6.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es7.object.values { "chrome":"54", "ie":"10", "node":"6" } + es6.promise { "chrome":"54", "ie":"10", "node":"6" } + es7.promise.finally { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.apply { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.construct { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.define-property { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.get { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.has { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.set { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.constructor { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.flags { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.match { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.replace { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.split { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.search { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.to-string { "chrome":"54", "ie":"10", "node":"6" } + es6.set { "chrome":"54", "ie":"10", "node":"6" } + es6.symbol { "chrome":"54", "ie":"10", "node":"6" } + es7.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6" } + es6.string.anchor { "chrome":"54", "ie":"10", "node":"6" } + es6.string.big { "chrome":"54", "ie":"10", "node":"6" } + es6.string.blink { "chrome":"54", "ie":"10", "node":"6" } + es6.string.bold { "chrome":"54", "ie":"10", "node":"6" } + es6.string.code-point-at { "chrome":"54", "ie":"10", "node":"6" } + es6.string.ends-with { "chrome":"54", "ie":"10", "node":"6" } + es6.string.fixed { "chrome":"54", "ie":"10", "node":"6" } + es6.string.fontcolor { "chrome":"54", "ie":"10", "node":"6" } + es6.string.fontsize { "chrome":"54", "ie":"10", "node":"6" } + es6.string.from-code-point { "chrome":"54", "ie":"10", "node":"6" } + es6.string.includes { "chrome":"54", "ie":"10", "node":"6" } + es6.string.italics { "chrome":"54", "ie":"10", "node":"6" } + es6.string.iterator { "chrome":"54", "ie":"10", "node":"6" } + es6.string.link { "chrome":"54", "ie":"10", "node":"6" } + es7.string.pad-start { "chrome":"54", "ie":"10", "node":"6" } + es7.string.pad-end { "chrome":"54", "ie":"10", "node":"6" } + es6.string.raw { "chrome":"54", "ie":"10", "node":"6" } + es6.string.repeat { "chrome":"54", "ie":"10", "node":"6" } + es6.string.small { "chrome":"54", "ie":"10", "node":"6" } + es6.string.starts-with { "chrome":"54", "ie":"10", "node":"6" } + es6.string.strike { "chrome":"54", "ie":"10", "node":"6" } + es6.string.sub { "chrome":"54", "ie":"10", "node":"6" } + es6.string.sup { "chrome":"54", "ie":"10", "node":"6" } + es7.string.trim-left { "chrome":"54", "ie":"10", "node":"6" } + es7.string.trim-right { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.array-buffer { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.int8-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint8-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.int16-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint16-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.int32-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint32-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.float32-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.float64-array { "chrome":"54", "ie":"10", "node":"6" } + es6.weak-map { "chrome":"54", "ie":"10", "node":"6" } + es6.weak-set { "chrome":"54", "ie":"10", "node":"6" } + web.timers { "chrome":"54", "ie":"10", "node":"6" } + web.immediate { "chrome":"54", "ie":"10", "node":"6" } + web.dom.iterable { "chrome":"54", "ie":"10", "node":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/input.mjs new file mode 100644 index 0000000000..c0ce4c954e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt new file mode 100644 index 0000000000..faf7fd62fe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt @@ -0,0 +1,123 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.array.reduce { "chrome":"71" } + es.array.reduce-right { "chrome":"71" } + es.array.unscopables.flat { "chrome":"71" } + es.array.unscopables.flat-map { "chrome":"71" } + es.math.hypot { "chrome":"71" } + es.object.from-entries { "chrome":"71" } + esnext.aggregate-error { "chrome":"71" } + esnext.array.last-index { "chrome":"71" } + esnext.array.last-item { "chrome":"71" } + esnext.composite-key { "chrome":"71" } + esnext.composite-symbol { "chrome":"71" } + esnext.map.delete-all { "chrome":"71" } + esnext.map.every { "chrome":"71" } + esnext.map.filter { "chrome":"71" } + esnext.map.find { "chrome":"71" } + esnext.map.find-key { "chrome":"71" } + esnext.map.from { "chrome":"71" } + esnext.map.group-by { "chrome":"71" } + esnext.map.includes { "chrome":"71" } + esnext.map.key-by { "chrome":"71" } + esnext.map.key-of { "chrome":"71" } + esnext.map.map-keys { "chrome":"71" } + esnext.map.map-values { "chrome":"71" } + esnext.map.merge { "chrome":"71" } + esnext.map.of { "chrome":"71" } + esnext.map.reduce { "chrome":"71" } + esnext.map.some { "chrome":"71" } + esnext.map.update { "chrome":"71" } + esnext.math.clamp { "chrome":"71" } + esnext.math.deg-per-rad { "chrome":"71" } + esnext.math.degrees { "chrome":"71" } + esnext.math.fscale { "chrome":"71" } + esnext.math.iaddh { "chrome":"71" } + esnext.math.imulh { "chrome":"71" } + esnext.math.isubh { "chrome":"71" } + esnext.math.rad-per-deg { "chrome":"71" } + esnext.math.radians { "chrome":"71" } + esnext.math.scale { "chrome":"71" } + esnext.math.seeded-prng { "chrome":"71" } + esnext.math.signbit { "chrome":"71" } + esnext.math.umulh { "chrome":"71" } + esnext.number.from-string { "chrome":"71" } + esnext.observable { "chrome":"71" } + esnext.promise.all-settled { "chrome":"71" } + esnext.promise.any { "chrome":"71" } + esnext.promise.try { "chrome":"71" } + esnext.reflect.define-metadata { "chrome":"71" } + esnext.reflect.delete-metadata { "chrome":"71" } + esnext.reflect.get-metadata { "chrome":"71" } + esnext.reflect.get-metadata-keys { "chrome":"71" } + esnext.reflect.get-own-metadata { "chrome":"71" } + esnext.reflect.get-own-metadata-keys { "chrome":"71" } + esnext.reflect.has-metadata { "chrome":"71" } + esnext.reflect.has-own-metadata { "chrome":"71" } + esnext.reflect.metadata { "chrome":"71" } + esnext.set.add-all { "chrome":"71" } + esnext.set.delete-all { "chrome":"71" } + esnext.set.difference { "chrome":"71" } + esnext.set.every { "chrome":"71" } + esnext.set.filter { "chrome":"71" } + esnext.set.find { "chrome":"71" } + esnext.set.from { "chrome":"71" } + esnext.set.intersection { "chrome":"71" } + esnext.set.is-disjoint-from { "chrome":"71" } + esnext.set.is-subset-of { "chrome":"71" } + esnext.set.is-superset-of { "chrome":"71" } + esnext.set.join { "chrome":"71" } + esnext.set.map { "chrome":"71" } + esnext.set.of { "chrome":"71" } + esnext.set.reduce { "chrome":"71" } + esnext.set.some { "chrome":"71" } + esnext.set.symmetric-difference { "chrome":"71" } + esnext.set.union { "chrome":"71" } + esnext.string.at { "chrome":"71" } + esnext.string.code-points { "chrome":"71" } + esnext.string.match-all { "chrome":"71" } + esnext.string.replace-all { "chrome":"71" } + esnext.symbol.dispose { "chrome":"71" } + esnext.symbol.observable { "chrome":"71" } + esnext.symbol.pattern-match { "chrome":"71" } + esnext.weak-map.delete-all { "chrome":"71" } + esnext.weak-map.from { "chrome":"71" } + esnext.weak-map.of { "chrome":"71" } + esnext.weak-set.add-all { "chrome":"71" } + esnext.weak-set.delete-all { "chrome":"71" } + esnext.weak-set.from { "chrome":"71" } + esnext.weak-set.of { "chrome":"71" } + web.immediate { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/input.mjs new file mode 100644 index 0000000000..c0ce4c954e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/input.mjs @@ -0,0 +1,2 @@ +import 'core-js'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/options.json new file mode 100644 index 0000000000..f7413b5847 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt new file mode 100644 index 0000000000..da1e7dc561 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt @@ -0,0 +1,351 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "ie":"6" } + es.symbol.description { "ie":"6" } + es.symbol.async-iterator { "ie":"6" } + es.symbol.has-instance { "ie":"6" } + es.symbol.is-concat-spreadable { "ie":"6" } + es.symbol.iterator { "ie":"6" } + es.symbol.match { "ie":"6" } + es.symbol.replace { "ie":"6" } + es.symbol.search { "ie":"6" } + es.symbol.species { "ie":"6" } + es.symbol.split { "ie":"6" } + es.symbol.to-primitive { "ie":"6" } + es.symbol.to-string-tag { "ie":"6" } + es.symbol.unscopables { "ie":"6" } + es.array.concat { "ie":"6" } + es.array.copy-within { "ie":"6" } + es.array.every { "ie":"6" } + es.array.fill { "ie":"6" } + es.array.filter { "ie":"6" } + es.array.find { "ie":"6" } + es.array.find-index { "ie":"6" } + es.array.flat { "ie":"6" } + es.array.flat-map { "ie":"6" } + es.array.for-each { "ie":"6" } + es.array.from { "ie":"6" } + es.array.includes { "ie":"6" } + es.array.index-of { "ie":"6" } + es.array.is-array { "ie":"6" } + es.array.iterator { "ie":"6" } + es.array.join { "ie":"6" } + es.array.last-index-of { "ie":"6" } + es.array.map { "ie":"6" } + es.array.of { "ie":"6" } + es.array.reduce { "ie":"6" } + es.array.reduce-right { "ie":"6" } + es.array.slice { "ie":"6" } + es.array.some { "ie":"6" } + es.array.sort { "ie":"6" } + es.array.species { "ie":"6" } + es.array.splice { "ie":"6" } + es.array.unscopables.flat { "ie":"6" } + es.array.unscopables.flat-map { "ie":"6" } + es.array-buffer.constructor { "ie":"6" } + es.array-buffer.is-view { "ie":"6" } + es.array-buffer.slice { "ie":"6" } + es.data-view { "ie":"6" } + es.date.now { "ie":"6" } + es.date.to-iso-string { "ie":"6" } + es.date.to-json { "ie":"6" } + es.date.to-primitive { "ie":"6" } + es.date.to-string { "ie":"6" } + es.function.bind { "ie":"6" } + es.function.has-instance { "ie":"6" } + es.function.name { "ie":"6" } + es.json.to-string-tag { "ie":"6" } + es.map { "ie":"6" } + es.math.acosh { "ie":"6" } + es.math.asinh { "ie":"6" } + es.math.atanh { "ie":"6" } + es.math.cbrt { "ie":"6" } + es.math.clz32 { "ie":"6" } + es.math.cosh { "ie":"6" } + es.math.expm1 { "ie":"6" } + es.math.fround { "ie":"6" } + es.math.hypot { "ie":"6" } + es.math.imul { "ie":"6" } + es.math.log10 { "ie":"6" } + es.math.log1p { "ie":"6" } + es.math.log2 { "ie":"6" } + es.math.sign { "ie":"6" } + es.math.sinh { "ie":"6" } + es.math.tanh { "ie":"6" } + es.math.to-string-tag { "ie":"6" } + es.math.trunc { "ie":"6" } + es.number.constructor { "ie":"6" } + es.number.epsilon { "ie":"6" } + es.number.is-finite { "ie":"6" } + es.number.is-integer { "ie":"6" } + es.number.is-nan { "ie":"6" } + es.number.is-safe-integer { "ie":"6" } + es.number.max-safe-integer { "ie":"6" } + es.number.min-safe-integer { "ie":"6" } + es.number.parse-float { "ie":"6" } + es.number.parse-int { "ie":"6" } + es.number.to-fixed { "ie":"6" } + es.number.to-precision { "ie":"6" } + es.object.assign { "ie":"6" } + es.object.create { "ie":"6" } + es.object.define-getter { "ie":"6" } + es.object.define-properties { "ie":"6" } + es.object.define-property { "ie":"6" } + es.object.define-setter { "ie":"6" } + es.object.entries { "ie":"6" } + es.object.freeze { "ie":"6" } + es.object.from-entries { "ie":"6" } + es.object.get-own-property-descriptor { "ie":"6" } + es.object.get-own-property-descriptors { "ie":"6" } + es.object.get-own-property-names { "ie":"6" } + es.object.get-prototype-of { "ie":"6" } + es.object.is { "ie":"6" } + es.object.is-extensible { "ie":"6" } + es.object.is-frozen { "ie":"6" } + es.object.is-sealed { "ie":"6" } + es.object.keys { "ie":"6" } + es.object.lookup-getter { "ie":"6" } + es.object.lookup-setter { "ie":"6" } + es.object.prevent-extensions { "ie":"6" } + es.object.seal { "ie":"6" } + es.object.set-prototype-of { "ie":"6" } + es.object.to-string { "ie":"6" } + es.object.values { "ie":"6" } + es.parse-float { "ie":"6" } + es.parse-int { "ie":"6" } + es.promise { "ie":"6" } + es.promise.finally { "ie":"6" } + es.reflect.apply { "ie":"6" } + es.reflect.construct { "ie":"6" } + es.reflect.define-property { "ie":"6" } + es.reflect.delete-property { "ie":"6" } + es.reflect.get { "ie":"6" } + es.reflect.get-own-property-descriptor { "ie":"6" } + es.reflect.get-prototype-of { "ie":"6" } + es.reflect.has { "ie":"6" } + es.reflect.is-extensible { "ie":"6" } + es.reflect.own-keys { "ie":"6" } + es.reflect.prevent-extensions { "ie":"6" } + es.reflect.set { "ie":"6" } + es.reflect.set-prototype-of { "ie":"6" } + es.regexp.constructor { "ie":"6" } + es.regexp.exec { "ie":"6" } + es.regexp.flags { "ie":"6" } + es.regexp.to-string { "ie":"6" } + es.set { "ie":"6" } + es.string.code-point-at { "ie":"6" } + es.string.ends-with { "ie":"6" } + es.string.from-code-point { "ie":"6" } + es.string.includes { "ie":"6" } + es.string.iterator { "ie":"6" } + es.string.match { "ie":"6" } + es.string.pad-end { "ie":"6" } + es.string.pad-start { "ie":"6" } + es.string.raw { "ie":"6" } + es.string.repeat { "ie":"6" } + es.string.replace { "ie":"6" } + es.string.search { "ie":"6" } + es.string.split { "ie":"6" } + es.string.starts-with { "ie":"6" } + es.string.trim { "ie":"6" } + es.string.trim-end { "ie":"6" } + es.string.trim-start { "ie":"6" } + es.string.anchor { "ie":"6" } + es.string.big { "ie":"6" } + es.string.blink { "ie":"6" } + es.string.bold { "ie":"6" } + es.string.fixed { "ie":"6" } + es.string.fontcolor { "ie":"6" } + es.string.fontsize { "ie":"6" } + es.string.italics { "ie":"6" } + es.string.link { "ie":"6" } + es.string.small { "ie":"6" } + es.string.strike { "ie":"6" } + es.string.sub { "ie":"6" } + es.string.sup { "ie":"6" } + es.typed-array.float32-array { "ie":"6" } + es.typed-array.float64-array { "ie":"6" } + es.typed-array.int8-array { "ie":"6" } + es.typed-array.int16-array { "ie":"6" } + es.typed-array.int32-array { "ie":"6" } + es.typed-array.uint8-array { "ie":"6" } + es.typed-array.uint8-clamped-array { "ie":"6" } + es.typed-array.uint16-array { "ie":"6" } + es.typed-array.uint32-array { "ie":"6" } + es.typed-array.copy-within { "ie":"6" } + es.typed-array.every { "ie":"6" } + es.typed-array.fill { "ie":"6" } + es.typed-array.filter { "ie":"6" } + es.typed-array.find { "ie":"6" } + es.typed-array.find-index { "ie":"6" } + es.typed-array.for-each { "ie":"6" } + es.typed-array.from { "ie":"6" } + es.typed-array.includes { "ie":"6" } + es.typed-array.index-of { "ie":"6" } + es.typed-array.iterator { "ie":"6" } + es.typed-array.join { "ie":"6" } + es.typed-array.last-index-of { "ie":"6" } + es.typed-array.map { "ie":"6" } + es.typed-array.of { "ie":"6" } + es.typed-array.reduce { "ie":"6" } + es.typed-array.reduce-right { "ie":"6" } + es.typed-array.reverse { "ie":"6" } + es.typed-array.set { "ie":"6" } + es.typed-array.slice { "ie":"6" } + es.typed-array.some { "ie":"6" } + es.typed-array.sort { "ie":"6" } + es.typed-array.subarray { "ie":"6" } + es.typed-array.to-locale-string { "ie":"6" } + es.typed-array.to-string { "ie":"6" } + es.weak-map { "ie":"6" } + es.weak-set { "ie":"6" } + esnext.aggregate-error { "ie":"6" } + esnext.array.last-index { "ie":"6" } + esnext.array.last-item { "ie":"6" } + esnext.composite-key { "ie":"6" } + esnext.composite-symbol { "ie":"6" } + esnext.global-this { "ie":"6" } + esnext.map.delete-all { "ie":"6" } + esnext.map.every { "ie":"6" } + esnext.map.filter { "ie":"6" } + esnext.map.find { "ie":"6" } + esnext.map.find-key { "ie":"6" } + esnext.map.from { "ie":"6" } + esnext.map.group-by { "ie":"6" } + esnext.map.includes { "ie":"6" } + esnext.map.key-by { "ie":"6" } + esnext.map.key-of { "ie":"6" } + esnext.map.map-keys { "ie":"6" } + esnext.map.map-values { "ie":"6" } + esnext.map.merge { "ie":"6" } + esnext.map.of { "ie":"6" } + esnext.map.reduce { "ie":"6" } + esnext.map.some { "ie":"6" } + esnext.map.update { "ie":"6" } + esnext.math.clamp { "ie":"6" } + esnext.math.deg-per-rad { "ie":"6" } + esnext.math.degrees { "ie":"6" } + esnext.math.fscale { "ie":"6" } + esnext.math.iaddh { "ie":"6" } + esnext.math.imulh { "ie":"6" } + esnext.math.isubh { "ie":"6" } + esnext.math.rad-per-deg { "ie":"6" } + esnext.math.radians { "ie":"6" } + esnext.math.scale { "ie":"6" } + esnext.math.seeded-prng { "ie":"6" } + esnext.math.signbit { "ie":"6" } + esnext.math.umulh { "ie":"6" } + esnext.number.from-string { "ie":"6" } + esnext.observable { "ie":"6" } + esnext.promise.all-settled { "ie":"6" } + esnext.promise.any { "ie":"6" } + esnext.promise.try { "ie":"6" } + esnext.reflect.define-metadata { "ie":"6" } + esnext.reflect.delete-metadata { "ie":"6" } + esnext.reflect.get-metadata { "ie":"6" } + esnext.reflect.get-metadata-keys { "ie":"6" } + esnext.reflect.get-own-metadata { "ie":"6" } + esnext.reflect.get-own-metadata-keys { "ie":"6" } + esnext.reflect.has-metadata { "ie":"6" } + esnext.reflect.has-own-metadata { "ie":"6" } + esnext.reflect.metadata { "ie":"6" } + esnext.set.add-all { "ie":"6" } + esnext.set.delete-all { "ie":"6" } + esnext.set.difference { "ie":"6" } + esnext.set.every { "ie":"6" } + esnext.set.filter { "ie":"6" } + esnext.set.find { "ie":"6" } + esnext.set.from { "ie":"6" } + esnext.set.intersection { "ie":"6" } + esnext.set.is-disjoint-from { "ie":"6" } + esnext.set.is-subset-of { "ie":"6" } + esnext.set.is-superset-of { "ie":"6" } + esnext.set.join { "ie":"6" } + esnext.set.map { "ie":"6" } + esnext.set.of { "ie":"6" } + esnext.set.reduce { "ie":"6" } + esnext.set.some { "ie":"6" } + esnext.set.symmetric-difference { "ie":"6" } + esnext.set.union { "ie":"6" } + esnext.string.at { "ie":"6" } + esnext.string.code-points { "ie":"6" } + esnext.string.match-all { "ie":"6" } + esnext.string.replace-all { "ie":"6" } + esnext.symbol.dispose { "ie":"6" } + esnext.symbol.observable { "ie":"6" } + esnext.symbol.pattern-match { "ie":"6" } + esnext.weak-map.delete-all { "ie":"6" } + esnext.weak-map.from { "ie":"6" } + esnext.weak-map.of { "ie":"6" } + esnext.weak-set.add-all { "ie":"6" } + esnext.weak-set.delete-all { "ie":"6" } + esnext.weak-set.from { "ie":"6" } + esnext.weak-set.of { "ie":"6" } + web.dom-collections.for-each { "ie":"6" } + web.dom-collections.iterator { "ie":"6" } + web.immediate { "ie":"6" } + web.queue-microtask { "ie":"6" } + web.timers { "ie":"6" } + web.url { "ie":"6" } + web.url.to-json { "ie":"6" } + web.url-search-params { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/options.json new file mode 100644 index 0000000000..ca76bce5c0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": ["Android >= 4"] + }, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/stdout.txt new file mode 100644 index 0000000000..157b9cb4c7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/stdout.txt @@ -0,0 +1,243 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "android": "4" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "android":"4" } + proposal-logical-assignment-operators { "android":"4" } + proposal-nullish-coalescing-operator { "android":"4" } + proposal-optional-chaining { "android":"4" } + proposal-json-strings { "android":"4" } + proposal-optional-catch-binding { "android":"4" } + transform-parameters { "android":"4" } + proposal-async-generator-functions { "android":"4" } + proposal-object-rest-spread { "android":"4" } + transform-dotall-regex { "android":"4" } + proposal-unicode-property-regex { "android":"4" } + transform-named-capturing-groups-regex { "android":"4" } + transform-async-to-generator { "android":"4" } + transform-exponentiation-operator { "android":"4" } + transform-template-literals { "android":"4" } + transform-literals { "android":"4" } + transform-function-name { "android":"4" } + transform-arrow-functions { "android":"4" } + transform-block-scoped-functions { "android":"4" } + transform-classes { "android":"4" } + transform-object-super { "android":"4" } + transform-shorthand-properties { "android":"4" } + transform-duplicate-keys { "android":"4" } + transform-computed-properties { "android":"4" } + transform-for-of { "android":"4" } + transform-sticky-regex { "android":"4" } + transform-unicode-escapes { "android":"4" } + transform-unicode-regex { "android":"4" } + transform-spread { "android":"4" } + transform-destructuring { "android":"4" } + transform-block-scoping { "android":"4" } + transform-typeof-symbol { "android":"4" } + transform-new-target { "android":"4" } + transform-regenerator { "android":"4" } + transform-reserved-words { "android":"4" } + proposal-export-namespace-from { "android":"4" } + transform-modules-commonjs { "android":"4" } + proposal-dynamic-import { "android":"4" } +corejs3: `DEBUG` option + +Using targets: { + "android": "4" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-android/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "android":"4" } + es.symbol.description { "android":"4" } + es.symbol.async-iterator { "android":"4" } + es.symbol.has-instance { "android":"4" } + es.symbol.is-concat-spreadable { "android":"4" } + es.symbol.iterator { "android":"4" } + es.symbol.match { "android":"4" } + es.symbol.replace { "android":"4" } + es.symbol.search { "android":"4" } + es.symbol.species { "android":"4" } + es.symbol.split { "android":"4" } + es.symbol.to-primitive { "android":"4" } + es.symbol.to-string-tag { "android":"4" } + es.symbol.unscopables { "android":"4" } + es.array.concat { "android":"4" } + es.array.copy-within { "android":"4" } + es.array.every { "android":"4" } + es.array.fill { "android":"4" } + es.array.filter { "android":"4" } + es.array.find { "android":"4" } + es.array.find-index { "android":"4" } + es.array.flat { "android":"4" } + es.array.flat-map { "android":"4" } + es.array.for-each { "android":"4" } + es.array.from { "android":"4" } + es.array.includes { "android":"4" } + es.array.index-of { "android":"4" } + es.array.iterator { "android":"4" } + es.array.join { "android":"4" } + es.array.last-index-of { "android":"4" } + es.array.map { "android":"4" } + es.array.of { "android":"4" } + es.array.reduce { "android":"4" } + es.array.reduce-right { "android":"4" } + es.array.slice { "android":"4" } + es.array.some { "android":"4" } + es.array.sort { "android":"4" } + es.array.species { "android":"4" } + es.array.splice { "android":"4" } + es.array.unscopables.flat { "android":"4" } + es.array.unscopables.flat-map { "android":"4" } + es.array-buffer.constructor { "android":"4" } + es.array-buffer.is-view { "android":"4" } + es.array-buffer.slice { "android":"4" } + es.data-view { "android":"4" } + es.date.to-iso-string { "android":"4" } + es.date.to-json { "android":"4" } + es.date.to-primitive { "android":"4" } + es.function.has-instance { "android":"4" } + es.json.to-string-tag { "android":"4" } + es.map { "android":"4" } + es.math.acosh { "android":"4" } + es.math.asinh { "android":"4" } + es.math.atanh { "android":"4" } + es.math.cbrt { "android":"4" } + es.math.clz32 { "android":"4" } + es.math.cosh { "android":"4" } + es.math.expm1 { "android":"4" } + es.math.fround { "android":"4" } + es.math.hypot { "android":"4" } + es.math.imul { "android":"4" } + es.math.log10 { "android":"4" } + es.math.log1p { "android":"4" } + es.math.log2 { "android":"4" } + es.math.sign { "android":"4" } + es.math.sinh { "android":"4" } + es.math.tanh { "android":"4" } + es.math.to-string-tag { "android":"4" } + es.math.trunc { "android":"4" } + es.number.constructor { "android":"4" } + es.number.epsilon { "android":"4" } + es.number.is-finite { "android":"4" } + es.number.is-integer { "android":"4" } + es.number.is-nan { "android":"4" } + es.number.is-safe-integer { "android":"4" } + es.number.max-safe-integer { "android":"4" } + es.number.min-safe-integer { "android":"4" } + es.number.parse-float { "android":"4" } + es.number.parse-int { "android":"4" } + es.number.to-fixed { "android":"4" } + es.number.to-precision { "android":"4" } + es.object.assign { "android":"4" } + es.object.define-getter { "android":"4" } + es.object.define-setter { "android":"4" } + es.object.entries { "android":"4" } + es.object.freeze { "android":"4" } + es.object.from-entries { "android":"4" } + es.object.get-own-property-descriptor { "android":"4" } + es.object.get-own-property-descriptors { "android":"4" } + es.object.get-own-property-names { "android":"4" } + es.object.get-prototype-of { "android":"4" } + es.object.is { "android":"4" } + es.object.is-extensible { "android":"4" } + es.object.is-frozen { "android":"4" } + es.object.is-sealed { "android":"4" } + es.object.keys { "android":"4" } + es.object.lookup-getter { "android":"4" } + es.object.lookup-setter { "android":"4" } + es.object.prevent-extensions { "android":"4" } + es.object.seal { "android":"4" } + es.object.set-prototype-of { "android":"4" } + es.object.to-string { "android":"4" } + es.object.values { "android":"4" } + es.parse-float { "android":"4" } + es.parse-int { "android":"4" } + es.promise { "android":"4" } + es.promise.finally { "android":"4" } + es.reflect.apply { "android":"4" } + es.reflect.construct { "android":"4" } + es.reflect.define-property { "android":"4" } + es.reflect.delete-property { "android":"4" } + es.reflect.get { "android":"4" } + es.reflect.get-own-property-descriptor { "android":"4" } + es.reflect.get-prototype-of { "android":"4" } + es.reflect.has { "android":"4" } + es.reflect.is-extensible { "android":"4" } + es.reflect.own-keys { "android":"4" } + es.reflect.prevent-extensions { "android":"4" } + es.reflect.set { "android":"4" } + es.reflect.set-prototype-of { "android":"4" } + es.regexp.constructor { "android":"4" } + es.regexp.exec { "android":"4" } + es.regexp.flags { "android":"4" } + es.regexp.to-string { "android":"4" } + es.set { "android":"4" } + es.string.code-point-at { "android":"4" } + es.string.ends-with { "android":"4" } + es.string.from-code-point { "android":"4" } + es.string.includes { "android":"4" } + es.string.iterator { "android":"4" } + es.string.match { "android":"4" } + es.string.pad-end { "android":"4" } + es.string.pad-start { "android":"4" } + es.string.raw { "android":"4" } + es.string.repeat { "android":"4" } + es.string.replace { "android":"4" } + es.string.search { "android":"4" } + es.string.split { "android":"4" } + es.string.starts-with { "android":"4" } + es.string.trim { "android":"4" } + es.string.trim-end { "android":"4" } + es.string.trim-start { "android":"4" } + es.typed-array.float32-array { "android":"4" } + es.typed-array.float64-array { "android":"4" } + es.typed-array.int8-array { "android":"4" } + es.typed-array.int16-array { "android":"4" } + es.typed-array.int32-array { "android":"4" } + es.typed-array.uint8-array { "android":"4" } + es.typed-array.uint8-clamped-array { "android":"4" } + es.typed-array.uint16-array { "android":"4" } + es.typed-array.uint32-array { "android":"4" } + es.typed-array.copy-within { "android":"4" } + es.typed-array.every { "android":"4" } + es.typed-array.fill { "android":"4" } + es.typed-array.filter { "android":"4" } + es.typed-array.find { "android":"4" } + es.typed-array.find-index { "android":"4" } + es.typed-array.for-each { "android":"4" } + es.typed-array.from { "android":"4" } + es.typed-array.includes { "android":"4" } + es.typed-array.index-of { "android":"4" } + es.typed-array.iterator { "android":"4" } + es.typed-array.join { "android":"4" } + es.typed-array.last-index-of { "android":"4" } + es.typed-array.map { "android":"4" } + es.typed-array.of { "android":"4" } + es.typed-array.reduce { "android":"4" } + es.typed-array.reduce-right { "android":"4" } + es.typed-array.reverse { "android":"4" } + es.typed-array.set { "android":"4" } + es.typed-array.slice { "android":"4" } + es.typed-array.some { "android":"4" } + es.typed-array.sort { "android":"4" } + es.typed-array.subarray { "android":"4" } + es.typed-array.to-locale-string { "android":"4" } + es.typed-array.to-string { "android":"4" } + es.weak-map { "android":"4" } + es.weak-set { "android":"4" } + web.dom-collections.for-each { "android":"4" } + web.dom-collections.iterator { "android":"4" } + web.immediate { "android":"4" } + web.queue-microtask { "android":"4" } + web.url { "android":"4" } + web.url.to-json { "android":"4" } + web.url-search-params { "android":"4" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/options.json new file mode 100644 index 0000000000..f7413b5847 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stderr.txt new file mode 100644 index 0000000000..228f1a0528 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stderr.txt @@ -0,0 +1,2 @@ +`@babel/polyfill` is deprecated. Please, use required parts of `core-js` + and `regenerator-runtime/runtime` separately \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt new file mode 100644 index 0000000000..309dae1bbb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt @@ -0,0 +1,62 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/input.mjs] +The entry point for the corejs3 polyfill has not been found. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/options.json new file mode 100644 index 0000000000..294459fe21 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "electron": 0.36 + }, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/stderr.txt new file mode 100644 index 0000000000..a53cf9b179 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/stderr.txt @@ -0,0 +1,6 @@ +Warning, the following targets are using a decimal version: + + electron: 0.36 + +We recommend using a string for minor/patch versions to avoid numbers like 6.10 +getting parsed as 6.1, which can lead to unexpected behavior. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/stdout.txt new file mode 100644 index 0000000000..0077505463 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/stdout.txt @@ -0,0 +1,142 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "electron": "0.36" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "electron":"0.36" } + proposal-logical-assignment-operators { "electron":"0.36" } + proposal-nullish-coalescing-operator { "electron":"0.36" } + proposal-optional-chaining { "electron":"0.36" } + proposal-json-strings { "electron":"0.36" } + proposal-optional-catch-binding { "electron":"0.36" } + transform-parameters { "electron":"0.36" } + proposal-async-generator-functions { "electron":"0.36" } + proposal-object-rest-spread { "electron":"0.36" } + transform-dotall-regex { "electron":"0.36" } + proposal-unicode-property-regex { "electron":"0.36" } + transform-named-capturing-groups-regex { "electron":"0.36" } + transform-async-to-generator { "electron":"0.36" } + transform-exponentiation-operator { "electron":"0.36" } + transform-function-name { "electron":"0.36" } + transform-for-of { "electron":"0.36" } + transform-sticky-regex { "electron":"0.36" } + transform-unicode-regex { "electron":"0.36" } + transform-destructuring { "electron":"0.36" } + transform-block-scoping { "electron":"0.36" } + transform-regenerator { "electron":"0.36" } + proposal-export-namespace-from { "electron":"0.36" } + transform-modules-commonjs { "electron":"0.36" } + proposal-dynamic-import { "electron":"0.36" } +corejs3: `DEBUG` option + +Using targets: { + "electron": "0.36" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-electron/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "electron":"0.36" } + es.symbol.description { "electron":"0.36" } + es.symbol.async-iterator { "electron":"0.36" } + es.symbol.has-instance { "electron":"0.36" } + es.symbol.is-concat-spreadable { "electron":"0.36" } + es.symbol.match { "electron":"0.36" } + es.symbol.replace { "electron":"0.36" } + es.symbol.search { "electron":"0.36" } + es.symbol.species { "electron":"0.36" } + es.symbol.split { "electron":"0.36" } + es.symbol.to-string-tag { "electron":"0.36" } + es.array.concat { "electron":"0.36" } + es.array.filter { "electron":"0.36" } + es.array.flat { "electron":"0.36" } + es.array.flat-map { "electron":"0.36" } + es.array.from { "electron":"0.36" } + es.array.includes { "electron":"0.36" } + es.array.index-of { "electron":"0.36" } + es.array.iterator { "electron":"0.36" } + es.array.last-index-of { "electron":"0.36" } + es.array.map { "electron":"0.36" } + es.array.reduce { "electron":"0.36" } + es.array.reduce-right { "electron":"0.36" } + es.array.slice { "electron":"0.36" } + es.array.sort { "electron":"0.36" } + es.array.species { "electron":"0.36" } + es.array.splice { "electron":"0.36" } + es.array.unscopables.flat { "electron":"0.36" } + es.array.unscopables.flat-map { "electron":"0.36" } + es.function.has-instance { "electron":"0.36" } + es.json.to-string-tag { "electron":"0.36" } + es.map { "electron":"0.36" } + es.math.acosh { "electron":"0.36" } + es.math.hypot { "electron":"0.36" } + es.math.to-string-tag { "electron":"0.36" } + es.object.assign { "electron":"0.36" } + es.object.define-getter { "electron":"0.36" } + es.object.define-setter { "electron":"0.36" } + es.object.entries { "electron":"0.36" } + es.object.from-entries { "electron":"0.36" } + es.object.get-own-property-descriptors { "electron":"0.36" } + es.object.lookup-getter { "electron":"0.36" } + es.object.lookup-setter { "electron":"0.36" } + es.object.to-string { "electron":"0.36" } + es.object.values { "electron":"0.36" } + es.promise { "electron":"0.36" } + es.promise.finally { "electron":"0.36" } + es.reflect.apply { "electron":"0.36" } + es.reflect.construct { "electron":"0.36" } + es.reflect.define-property { "electron":"0.36" } + es.reflect.delete-property { "electron":"0.36" } + es.reflect.get { "electron":"0.36" } + es.reflect.get-own-property-descriptor { "electron":"0.36" } + es.reflect.get-prototype-of { "electron":"0.36" } + es.reflect.has { "electron":"0.36" } + es.reflect.is-extensible { "electron":"0.36" } + es.reflect.own-keys { "electron":"0.36" } + es.reflect.prevent-extensions { "electron":"0.36" } + es.reflect.set { "electron":"0.36" } + es.reflect.set-prototype-of { "electron":"0.36" } + es.regexp.constructor { "electron":"0.36" } + es.regexp.flags { "electron":"0.36" } + es.regexp.to-string { "electron":"0.36" } + es.set { "electron":"0.36" } + es.string.ends-with { "electron":"0.36" } + es.string.includes { "electron":"0.36" } + es.string.match { "electron":"0.36" } + es.string.pad-end { "electron":"0.36" } + es.string.pad-start { "electron":"0.36" } + es.string.replace { "electron":"0.36" } + es.string.search { "electron":"0.36" } + es.string.split { "electron":"0.36" } + es.string.starts-with { "electron":"0.36" } + es.string.trim { "electron":"0.36" } + es.string.trim-end { "electron":"0.36" } + es.string.trim-start { "electron":"0.36" } + es.typed-array.float32-array { "electron":"0.36" } + es.typed-array.float64-array { "electron":"0.36" } + es.typed-array.int8-array { "electron":"0.36" } + es.typed-array.int16-array { "electron":"0.36" } + es.typed-array.int32-array { "electron":"0.36" } + es.typed-array.uint8-array { "electron":"0.36" } + es.typed-array.uint8-clamped-array { "electron":"0.36" } + es.typed-array.uint16-array { "electron":"0.36" } + es.typed-array.uint32-array { "electron":"0.36" } + es.typed-array.from { "electron":"0.36" } + es.typed-array.includes { "electron":"0.36" } + es.typed-array.of { "electron":"0.36" } + es.typed-array.to-string { "electron":"0.36" } + es.weak-map { "electron":"0.36" } + es.weak-set { "electron":"0.36" } + web.dom-collections.for-each { "electron":"0.36" } + web.dom-collections.iterator { "electron":"0.36" } + web.immediate { "electron":"0.36" } + web.queue-microtask { "electron":"0.36" } + web.url { "electron":"0.36" } + web.url.to-json { "electron":"0.36" } + web.url-search-params { "electron":"0.36" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/input.mjs new file mode 100644 index 0000000000..d830e7e10c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/es'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt new file mode 100644 index 0000000000..1cf85e7ce6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt @@ -0,0 +1,41 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.array.reduce { "chrome":"71" } + es.array.reduce-right { "chrome":"71" } + es.array.unscopables.flat { "chrome":"71" } + es.array.unscopables.flat-map { "chrome":"71" } + es.math.hypot { "chrome":"71" } + es.object.from-entries { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/input.mjs new file mode 100644 index 0000000000..3c012b22d8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/es'; +import 'core-js/proposals'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt new file mode 100644 index 0000000000..fbc1ab74aa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt @@ -0,0 +1,122 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.array.reduce { "chrome":"71" } + es.array.reduce-right { "chrome":"71" } + es.array.unscopables.flat { "chrome":"71" } + es.array.unscopables.flat-map { "chrome":"71" } + es.math.hypot { "chrome":"71" } + es.object.from-entries { "chrome":"71" } + esnext.aggregate-error { "chrome":"71" } + esnext.array.last-index { "chrome":"71" } + esnext.array.last-item { "chrome":"71" } + esnext.composite-key { "chrome":"71" } + esnext.composite-symbol { "chrome":"71" } + esnext.map.delete-all { "chrome":"71" } + esnext.map.every { "chrome":"71" } + esnext.map.filter { "chrome":"71" } + esnext.map.find { "chrome":"71" } + esnext.map.find-key { "chrome":"71" } + esnext.map.from { "chrome":"71" } + esnext.map.group-by { "chrome":"71" } + esnext.map.includes { "chrome":"71" } + esnext.map.key-by { "chrome":"71" } + esnext.map.key-of { "chrome":"71" } + esnext.map.map-keys { "chrome":"71" } + esnext.map.map-values { "chrome":"71" } + esnext.map.merge { "chrome":"71" } + esnext.map.of { "chrome":"71" } + esnext.map.reduce { "chrome":"71" } + esnext.map.some { "chrome":"71" } + esnext.map.update { "chrome":"71" } + esnext.math.clamp { "chrome":"71" } + esnext.math.deg-per-rad { "chrome":"71" } + esnext.math.degrees { "chrome":"71" } + esnext.math.fscale { "chrome":"71" } + esnext.math.iaddh { "chrome":"71" } + esnext.math.imulh { "chrome":"71" } + esnext.math.isubh { "chrome":"71" } + esnext.math.rad-per-deg { "chrome":"71" } + esnext.math.radians { "chrome":"71" } + esnext.math.scale { "chrome":"71" } + esnext.math.seeded-prng { "chrome":"71" } + esnext.math.signbit { "chrome":"71" } + esnext.math.umulh { "chrome":"71" } + esnext.number.from-string { "chrome":"71" } + esnext.observable { "chrome":"71" } + esnext.promise.all-settled { "chrome":"71" } + esnext.promise.any { "chrome":"71" } + esnext.promise.try { "chrome":"71" } + esnext.reflect.define-metadata { "chrome":"71" } + esnext.reflect.delete-metadata { "chrome":"71" } + esnext.reflect.get-metadata { "chrome":"71" } + esnext.reflect.get-metadata-keys { "chrome":"71" } + esnext.reflect.get-own-metadata { "chrome":"71" } + esnext.reflect.get-own-metadata-keys { "chrome":"71" } + esnext.reflect.has-metadata { "chrome":"71" } + esnext.reflect.has-own-metadata { "chrome":"71" } + esnext.reflect.metadata { "chrome":"71" } + esnext.set.add-all { "chrome":"71" } + esnext.set.delete-all { "chrome":"71" } + esnext.set.difference { "chrome":"71" } + esnext.set.every { "chrome":"71" } + esnext.set.filter { "chrome":"71" } + esnext.set.find { "chrome":"71" } + esnext.set.from { "chrome":"71" } + esnext.set.intersection { "chrome":"71" } + esnext.set.is-disjoint-from { "chrome":"71" } + esnext.set.is-subset-of { "chrome":"71" } + esnext.set.is-superset-of { "chrome":"71" } + esnext.set.join { "chrome":"71" } + esnext.set.map { "chrome":"71" } + esnext.set.of { "chrome":"71" } + esnext.set.reduce { "chrome":"71" } + esnext.set.some { "chrome":"71" } + esnext.set.symmetric-difference { "chrome":"71" } + esnext.set.union { "chrome":"71" } + esnext.string.at { "chrome":"71" } + esnext.string.code-points { "chrome":"71" } + esnext.string.match-all { "chrome":"71" } + esnext.string.replace-all { "chrome":"71" } + esnext.symbol.dispose { "chrome":"71" } + esnext.symbol.observable { "chrome":"71" } + esnext.symbol.pattern-match { "chrome":"71" } + esnext.weak-map.delete-all { "chrome":"71" } + esnext.weak-map.from { "chrome":"71" } + esnext.weak-map.of { "chrome":"71" } + esnext.weak-set.add-all { "chrome":"71" } + esnext.weak-set.delete-all { "chrome":"71" } + esnext.weak-set.from { "chrome":"71" } + esnext.weak-set.of { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/input.mjs new file mode 100644 index 0000000000..3c012b22d8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/input.mjs @@ -0,0 +1,3 @@ +import 'core-js/es'; +import 'core-js/proposals'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/options.json new file mode 100644 index 0000000000..f7413b5847 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt new file mode 100644 index 0000000000..70fedb4ae6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt @@ -0,0 +1,346 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "ie":"6" } + es.symbol.description { "ie":"6" } + es.symbol.async-iterator { "ie":"6" } + es.symbol.has-instance { "ie":"6" } + es.symbol.is-concat-spreadable { "ie":"6" } + es.symbol.iterator { "ie":"6" } + es.symbol.match { "ie":"6" } + es.symbol.replace { "ie":"6" } + es.symbol.search { "ie":"6" } + es.symbol.species { "ie":"6" } + es.symbol.split { "ie":"6" } + es.symbol.to-primitive { "ie":"6" } + es.symbol.to-string-tag { "ie":"6" } + es.symbol.unscopables { "ie":"6" } + es.array.concat { "ie":"6" } + es.array.copy-within { "ie":"6" } + es.array.every { "ie":"6" } + es.array.fill { "ie":"6" } + es.array.filter { "ie":"6" } + es.array.find { "ie":"6" } + es.array.find-index { "ie":"6" } + es.array.flat { "ie":"6" } + es.array.flat-map { "ie":"6" } + es.array.for-each { "ie":"6" } + es.array.from { "ie":"6" } + es.array.includes { "ie":"6" } + es.array.index-of { "ie":"6" } + es.array.is-array { "ie":"6" } + es.array.iterator { "ie":"6" } + es.array.join { "ie":"6" } + es.array.last-index-of { "ie":"6" } + es.array.map { "ie":"6" } + es.array.of { "ie":"6" } + es.array.reduce { "ie":"6" } + es.array.reduce-right { "ie":"6" } + es.array.slice { "ie":"6" } + es.array.some { "ie":"6" } + es.array.sort { "ie":"6" } + es.array.species { "ie":"6" } + es.array.splice { "ie":"6" } + es.array.unscopables.flat { "ie":"6" } + es.array.unscopables.flat-map { "ie":"6" } + es.array-buffer.constructor { "ie":"6" } + es.array-buffer.is-view { "ie":"6" } + es.array-buffer.slice { "ie":"6" } + es.data-view { "ie":"6" } + es.date.now { "ie":"6" } + es.date.to-iso-string { "ie":"6" } + es.date.to-json { "ie":"6" } + es.date.to-primitive { "ie":"6" } + es.date.to-string { "ie":"6" } + es.function.bind { "ie":"6" } + es.function.has-instance { "ie":"6" } + es.function.name { "ie":"6" } + es.json.to-string-tag { "ie":"6" } + es.map { "ie":"6" } + es.math.acosh { "ie":"6" } + es.math.asinh { "ie":"6" } + es.math.atanh { "ie":"6" } + es.math.cbrt { "ie":"6" } + es.math.clz32 { "ie":"6" } + es.math.cosh { "ie":"6" } + es.math.expm1 { "ie":"6" } + es.math.fround { "ie":"6" } + es.math.hypot { "ie":"6" } + es.math.imul { "ie":"6" } + es.math.log10 { "ie":"6" } + es.math.log1p { "ie":"6" } + es.math.log2 { "ie":"6" } + es.math.sign { "ie":"6" } + es.math.sinh { "ie":"6" } + es.math.tanh { "ie":"6" } + es.math.to-string-tag { "ie":"6" } + es.math.trunc { "ie":"6" } + es.number.constructor { "ie":"6" } + es.number.epsilon { "ie":"6" } + es.number.is-finite { "ie":"6" } + es.number.is-integer { "ie":"6" } + es.number.is-nan { "ie":"6" } + es.number.is-safe-integer { "ie":"6" } + es.number.max-safe-integer { "ie":"6" } + es.number.min-safe-integer { "ie":"6" } + es.number.parse-float { "ie":"6" } + es.number.parse-int { "ie":"6" } + es.number.to-fixed { "ie":"6" } + es.number.to-precision { "ie":"6" } + es.object.assign { "ie":"6" } + es.object.create { "ie":"6" } + es.object.define-getter { "ie":"6" } + es.object.define-properties { "ie":"6" } + es.object.define-property { "ie":"6" } + es.object.define-setter { "ie":"6" } + es.object.entries { "ie":"6" } + es.object.freeze { "ie":"6" } + es.object.from-entries { "ie":"6" } + es.object.get-own-property-descriptor { "ie":"6" } + es.object.get-own-property-descriptors { "ie":"6" } + es.object.get-own-property-names { "ie":"6" } + es.object.get-prototype-of { "ie":"6" } + es.object.is { "ie":"6" } + es.object.is-extensible { "ie":"6" } + es.object.is-frozen { "ie":"6" } + es.object.is-sealed { "ie":"6" } + es.object.keys { "ie":"6" } + es.object.lookup-getter { "ie":"6" } + es.object.lookup-setter { "ie":"6" } + es.object.prevent-extensions { "ie":"6" } + es.object.seal { "ie":"6" } + es.object.set-prototype-of { "ie":"6" } + es.object.to-string { "ie":"6" } + es.object.values { "ie":"6" } + es.parse-float { "ie":"6" } + es.parse-int { "ie":"6" } + es.promise { "ie":"6" } + es.promise.finally { "ie":"6" } + es.reflect.apply { "ie":"6" } + es.reflect.construct { "ie":"6" } + es.reflect.define-property { "ie":"6" } + es.reflect.delete-property { "ie":"6" } + es.reflect.get { "ie":"6" } + es.reflect.get-own-property-descriptor { "ie":"6" } + es.reflect.get-prototype-of { "ie":"6" } + es.reflect.has { "ie":"6" } + es.reflect.is-extensible { "ie":"6" } + es.reflect.own-keys { "ie":"6" } + es.reflect.prevent-extensions { "ie":"6" } + es.reflect.set { "ie":"6" } + es.reflect.set-prototype-of { "ie":"6" } + es.regexp.constructor { "ie":"6" } + es.regexp.exec { "ie":"6" } + es.regexp.flags { "ie":"6" } + es.regexp.to-string { "ie":"6" } + es.set { "ie":"6" } + es.string.code-point-at { "ie":"6" } + es.string.ends-with { "ie":"6" } + es.string.from-code-point { "ie":"6" } + es.string.includes { "ie":"6" } + es.string.iterator { "ie":"6" } + es.string.match { "ie":"6" } + es.string.pad-end { "ie":"6" } + es.string.pad-start { "ie":"6" } + es.string.raw { "ie":"6" } + es.string.repeat { "ie":"6" } + es.string.replace { "ie":"6" } + es.string.search { "ie":"6" } + es.string.split { "ie":"6" } + es.string.starts-with { "ie":"6" } + es.string.trim { "ie":"6" } + es.string.trim-end { "ie":"6" } + es.string.trim-start { "ie":"6" } + es.string.anchor { "ie":"6" } + es.string.big { "ie":"6" } + es.string.blink { "ie":"6" } + es.string.bold { "ie":"6" } + es.string.fixed { "ie":"6" } + es.string.fontcolor { "ie":"6" } + es.string.fontsize { "ie":"6" } + es.string.italics { "ie":"6" } + es.string.link { "ie":"6" } + es.string.small { "ie":"6" } + es.string.strike { "ie":"6" } + es.string.sub { "ie":"6" } + es.string.sup { "ie":"6" } + es.typed-array.float32-array { "ie":"6" } + es.typed-array.float64-array { "ie":"6" } + es.typed-array.int8-array { "ie":"6" } + es.typed-array.int16-array { "ie":"6" } + es.typed-array.int32-array { "ie":"6" } + es.typed-array.uint8-array { "ie":"6" } + es.typed-array.uint8-clamped-array { "ie":"6" } + es.typed-array.uint16-array { "ie":"6" } + es.typed-array.uint32-array { "ie":"6" } + es.typed-array.copy-within { "ie":"6" } + es.typed-array.every { "ie":"6" } + es.typed-array.fill { "ie":"6" } + es.typed-array.filter { "ie":"6" } + es.typed-array.find { "ie":"6" } + es.typed-array.find-index { "ie":"6" } + es.typed-array.for-each { "ie":"6" } + es.typed-array.from { "ie":"6" } + es.typed-array.includes { "ie":"6" } + es.typed-array.index-of { "ie":"6" } + es.typed-array.iterator { "ie":"6" } + es.typed-array.join { "ie":"6" } + es.typed-array.last-index-of { "ie":"6" } + es.typed-array.map { "ie":"6" } + es.typed-array.of { "ie":"6" } + es.typed-array.reduce { "ie":"6" } + es.typed-array.reduce-right { "ie":"6" } + es.typed-array.reverse { "ie":"6" } + es.typed-array.set { "ie":"6" } + es.typed-array.slice { "ie":"6" } + es.typed-array.some { "ie":"6" } + es.typed-array.sort { "ie":"6" } + es.typed-array.subarray { "ie":"6" } + es.typed-array.to-locale-string { "ie":"6" } + es.typed-array.to-string { "ie":"6" } + es.weak-map { "ie":"6" } + es.weak-set { "ie":"6" } + esnext.aggregate-error { "ie":"6" } + esnext.array.last-index { "ie":"6" } + esnext.array.last-item { "ie":"6" } + esnext.composite-key { "ie":"6" } + esnext.composite-symbol { "ie":"6" } + esnext.global-this { "ie":"6" } + esnext.map.delete-all { "ie":"6" } + esnext.map.every { "ie":"6" } + esnext.map.filter { "ie":"6" } + esnext.map.find { "ie":"6" } + esnext.map.find-key { "ie":"6" } + esnext.map.from { "ie":"6" } + esnext.map.group-by { "ie":"6" } + esnext.map.includes { "ie":"6" } + esnext.map.key-by { "ie":"6" } + esnext.map.key-of { "ie":"6" } + esnext.map.map-keys { "ie":"6" } + esnext.map.map-values { "ie":"6" } + esnext.map.merge { "ie":"6" } + esnext.map.of { "ie":"6" } + esnext.map.reduce { "ie":"6" } + esnext.map.some { "ie":"6" } + esnext.map.update { "ie":"6" } + esnext.math.clamp { "ie":"6" } + esnext.math.deg-per-rad { "ie":"6" } + esnext.math.degrees { "ie":"6" } + esnext.math.fscale { "ie":"6" } + esnext.math.iaddh { "ie":"6" } + esnext.math.imulh { "ie":"6" } + esnext.math.isubh { "ie":"6" } + esnext.math.rad-per-deg { "ie":"6" } + esnext.math.radians { "ie":"6" } + esnext.math.scale { "ie":"6" } + esnext.math.seeded-prng { "ie":"6" } + esnext.math.signbit { "ie":"6" } + esnext.math.umulh { "ie":"6" } + esnext.number.from-string { "ie":"6" } + esnext.observable { "ie":"6" } + esnext.promise.all-settled { "ie":"6" } + esnext.promise.any { "ie":"6" } + esnext.promise.try { "ie":"6" } + esnext.reflect.define-metadata { "ie":"6" } + esnext.reflect.delete-metadata { "ie":"6" } + esnext.reflect.get-metadata { "ie":"6" } + esnext.reflect.get-metadata-keys { "ie":"6" } + esnext.reflect.get-own-metadata { "ie":"6" } + esnext.reflect.get-own-metadata-keys { "ie":"6" } + esnext.reflect.has-metadata { "ie":"6" } + esnext.reflect.has-own-metadata { "ie":"6" } + esnext.reflect.metadata { "ie":"6" } + esnext.set.add-all { "ie":"6" } + esnext.set.delete-all { "ie":"6" } + esnext.set.difference { "ie":"6" } + esnext.set.every { "ie":"6" } + esnext.set.filter { "ie":"6" } + esnext.set.find { "ie":"6" } + esnext.set.from { "ie":"6" } + esnext.set.intersection { "ie":"6" } + esnext.set.is-disjoint-from { "ie":"6" } + esnext.set.is-subset-of { "ie":"6" } + esnext.set.is-superset-of { "ie":"6" } + esnext.set.join { "ie":"6" } + esnext.set.map { "ie":"6" } + esnext.set.of { "ie":"6" } + esnext.set.reduce { "ie":"6" } + esnext.set.some { "ie":"6" } + esnext.set.symmetric-difference { "ie":"6" } + esnext.set.union { "ie":"6" } + esnext.string.at { "ie":"6" } + esnext.string.code-points { "ie":"6" } + esnext.string.match-all { "ie":"6" } + esnext.string.replace-all { "ie":"6" } + esnext.symbol.dispose { "ie":"6" } + esnext.symbol.observable { "ie":"6" } + esnext.symbol.pattern-match { "ie":"6" } + esnext.weak-map.delete-all { "ie":"6" } + esnext.weak-map.from { "ie":"6" } + esnext.weak-map.of { "ie":"6" } + esnext.weak-set.add-all { "ie":"6" } + esnext.weak-set.delete-all { "ie":"6" } + esnext.weak-set.from { "ie":"6" } + esnext.weak-set.of { "ie":"6" } + web.url { "ie":"6" } + web.url.to-json { "ie":"6" } + web.url-search-params { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/input.mjs new file mode 100644 index 0000000000..d830e7e10c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/es'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/options.json new file mode 100644 index 0000000000..6dc640306d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "shippedProposals": true, + "targets": { "browsers": "ie 6" }, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt new file mode 100644 index 0000000000..3dcba3a828 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt @@ -0,0 +1,261 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "ie":"6" } + es.symbol.description { "ie":"6" } + es.symbol.async-iterator { "ie":"6" } + es.symbol.has-instance { "ie":"6" } + es.symbol.is-concat-spreadable { "ie":"6" } + es.symbol.iterator { "ie":"6" } + es.symbol.match { "ie":"6" } + es.symbol.replace { "ie":"6" } + es.symbol.search { "ie":"6" } + es.symbol.species { "ie":"6" } + es.symbol.split { "ie":"6" } + es.symbol.to-primitive { "ie":"6" } + es.symbol.to-string-tag { "ie":"6" } + es.symbol.unscopables { "ie":"6" } + es.array.concat { "ie":"6" } + es.array.copy-within { "ie":"6" } + es.array.every { "ie":"6" } + es.array.fill { "ie":"6" } + es.array.filter { "ie":"6" } + es.array.find { "ie":"6" } + es.array.find-index { "ie":"6" } + es.array.flat { "ie":"6" } + es.array.flat-map { "ie":"6" } + es.array.for-each { "ie":"6" } + es.array.from { "ie":"6" } + es.array.includes { "ie":"6" } + es.array.index-of { "ie":"6" } + es.array.is-array { "ie":"6" } + es.array.iterator { "ie":"6" } + es.array.join { "ie":"6" } + es.array.last-index-of { "ie":"6" } + es.array.map { "ie":"6" } + es.array.of { "ie":"6" } + es.array.reduce { "ie":"6" } + es.array.reduce-right { "ie":"6" } + es.array.slice { "ie":"6" } + es.array.some { "ie":"6" } + es.array.sort { "ie":"6" } + es.array.species { "ie":"6" } + es.array.splice { "ie":"6" } + es.array.unscopables.flat { "ie":"6" } + es.array.unscopables.flat-map { "ie":"6" } + es.array-buffer.constructor { "ie":"6" } + es.array-buffer.is-view { "ie":"6" } + es.array-buffer.slice { "ie":"6" } + es.data-view { "ie":"6" } + es.date.now { "ie":"6" } + es.date.to-iso-string { "ie":"6" } + es.date.to-json { "ie":"6" } + es.date.to-primitive { "ie":"6" } + es.date.to-string { "ie":"6" } + es.function.bind { "ie":"6" } + es.function.has-instance { "ie":"6" } + es.function.name { "ie":"6" } + es.json.to-string-tag { "ie":"6" } + es.map { "ie":"6" } + es.math.acosh { "ie":"6" } + es.math.asinh { "ie":"6" } + es.math.atanh { "ie":"6" } + es.math.cbrt { "ie":"6" } + es.math.clz32 { "ie":"6" } + es.math.cosh { "ie":"6" } + es.math.expm1 { "ie":"6" } + es.math.fround { "ie":"6" } + es.math.hypot { "ie":"6" } + es.math.imul { "ie":"6" } + es.math.log10 { "ie":"6" } + es.math.log1p { "ie":"6" } + es.math.log2 { "ie":"6" } + es.math.sign { "ie":"6" } + es.math.sinh { "ie":"6" } + es.math.tanh { "ie":"6" } + es.math.to-string-tag { "ie":"6" } + es.math.trunc { "ie":"6" } + es.number.constructor { "ie":"6" } + es.number.epsilon { "ie":"6" } + es.number.is-finite { "ie":"6" } + es.number.is-integer { "ie":"6" } + es.number.is-nan { "ie":"6" } + es.number.is-safe-integer { "ie":"6" } + es.number.max-safe-integer { "ie":"6" } + es.number.min-safe-integer { "ie":"6" } + es.number.parse-float { "ie":"6" } + es.number.parse-int { "ie":"6" } + es.number.to-fixed { "ie":"6" } + es.number.to-precision { "ie":"6" } + es.object.assign { "ie":"6" } + es.object.create { "ie":"6" } + es.object.define-getter { "ie":"6" } + es.object.define-properties { "ie":"6" } + es.object.define-property { "ie":"6" } + es.object.define-setter { "ie":"6" } + es.object.entries { "ie":"6" } + es.object.freeze { "ie":"6" } + es.object.from-entries { "ie":"6" } + es.object.get-own-property-descriptor { "ie":"6" } + es.object.get-own-property-descriptors { "ie":"6" } + es.object.get-own-property-names { "ie":"6" } + es.object.get-prototype-of { "ie":"6" } + es.object.is { "ie":"6" } + es.object.is-extensible { "ie":"6" } + es.object.is-frozen { "ie":"6" } + es.object.is-sealed { "ie":"6" } + es.object.keys { "ie":"6" } + es.object.lookup-getter { "ie":"6" } + es.object.lookup-setter { "ie":"6" } + es.object.prevent-extensions { "ie":"6" } + es.object.seal { "ie":"6" } + es.object.set-prototype-of { "ie":"6" } + es.object.to-string { "ie":"6" } + es.object.values { "ie":"6" } + es.parse-float { "ie":"6" } + es.parse-int { "ie":"6" } + es.promise { "ie":"6" } + es.promise.finally { "ie":"6" } + es.reflect.apply { "ie":"6" } + es.reflect.construct { "ie":"6" } + es.reflect.define-property { "ie":"6" } + es.reflect.delete-property { "ie":"6" } + es.reflect.get { "ie":"6" } + es.reflect.get-own-property-descriptor { "ie":"6" } + es.reflect.get-prototype-of { "ie":"6" } + es.reflect.has { "ie":"6" } + es.reflect.is-extensible { "ie":"6" } + es.reflect.own-keys { "ie":"6" } + es.reflect.prevent-extensions { "ie":"6" } + es.reflect.set { "ie":"6" } + es.reflect.set-prototype-of { "ie":"6" } + es.regexp.constructor { "ie":"6" } + es.regexp.exec { "ie":"6" } + es.regexp.flags { "ie":"6" } + es.regexp.to-string { "ie":"6" } + es.set { "ie":"6" } + es.string.code-point-at { "ie":"6" } + es.string.ends-with { "ie":"6" } + es.string.from-code-point { "ie":"6" } + es.string.includes { "ie":"6" } + es.string.iterator { "ie":"6" } + es.string.match { "ie":"6" } + es.string.pad-end { "ie":"6" } + es.string.pad-start { "ie":"6" } + es.string.raw { "ie":"6" } + es.string.repeat { "ie":"6" } + es.string.replace { "ie":"6" } + es.string.search { "ie":"6" } + es.string.split { "ie":"6" } + es.string.starts-with { "ie":"6" } + es.string.trim { "ie":"6" } + es.string.trim-end { "ie":"6" } + es.string.trim-start { "ie":"6" } + es.string.anchor { "ie":"6" } + es.string.big { "ie":"6" } + es.string.blink { "ie":"6" } + es.string.bold { "ie":"6" } + es.string.fixed { "ie":"6" } + es.string.fontcolor { "ie":"6" } + es.string.fontsize { "ie":"6" } + es.string.italics { "ie":"6" } + es.string.link { "ie":"6" } + es.string.small { "ie":"6" } + es.string.strike { "ie":"6" } + es.string.sub { "ie":"6" } + es.string.sup { "ie":"6" } + es.typed-array.float32-array { "ie":"6" } + es.typed-array.float64-array { "ie":"6" } + es.typed-array.int8-array { "ie":"6" } + es.typed-array.int16-array { "ie":"6" } + es.typed-array.int32-array { "ie":"6" } + es.typed-array.uint8-array { "ie":"6" } + es.typed-array.uint8-clamped-array { "ie":"6" } + es.typed-array.uint16-array { "ie":"6" } + es.typed-array.uint32-array { "ie":"6" } + es.typed-array.copy-within { "ie":"6" } + es.typed-array.every { "ie":"6" } + es.typed-array.fill { "ie":"6" } + es.typed-array.filter { "ie":"6" } + es.typed-array.find { "ie":"6" } + es.typed-array.find-index { "ie":"6" } + es.typed-array.for-each { "ie":"6" } + es.typed-array.from { "ie":"6" } + es.typed-array.includes { "ie":"6" } + es.typed-array.index-of { "ie":"6" } + es.typed-array.iterator { "ie":"6" } + es.typed-array.join { "ie":"6" } + es.typed-array.last-index-of { "ie":"6" } + es.typed-array.map { "ie":"6" } + es.typed-array.of { "ie":"6" } + es.typed-array.reduce { "ie":"6" } + es.typed-array.reduce-right { "ie":"6" } + es.typed-array.reverse { "ie":"6" } + es.typed-array.set { "ie":"6" } + es.typed-array.slice { "ie":"6" } + es.typed-array.some { "ie":"6" } + es.typed-array.sort { "ie":"6" } + es.typed-array.subarray { "ie":"6" } + es.typed-array.to-locale-string { "ie":"6" } + es.typed-array.to-string { "ie":"6" } + es.weak-map { "ie":"6" } + es.weak-set { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/options.json new file mode 100644 index 0000000000..7a7ff504fe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "modules": false, + "targets": { + "chrome": 55 + }, + "useBuiltIns": "entry", + "corejs": 3, + "forceAllTransforms": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/stdout.txt new file mode 100644 index 0000000000..c3549461a4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/stdout.txt @@ -0,0 +1,90 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "55" +} + +Using modules transform: false + +Using plugins: + proposal-numeric-separator { "chrome":"55" } + proposal-logical-assignment-operators { "chrome":"55" } + proposal-nullish-coalescing-operator { "chrome":"55" } + proposal-optional-chaining { "chrome":"55" } + proposal-json-strings { "chrome":"55" } + proposal-optional-catch-binding { "chrome":"55" } + transform-parameters {} + proposal-async-generator-functions { "chrome":"55" } + proposal-object-rest-spread { "chrome":"55" } + transform-dotall-regex { "chrome":"55" } + proposal-unicode-property-regex { "chrome":"55" } + transform-named-capturing-groups-regex { "chrome":"55" } + transform-async-to-generator {} + transform-exponentiation-operator {} + transform-template-literals {} + transform-literals {} + transform-function-name {} + transform-arrow-functions {} + transform-block-scoped-functions {} + transform-classes {} + transform-object-super {} + transform-shorthand-properties {} + transform-duplicate-keys {} + transform-computed-properties {} + transform-for-of {} + transform-sticky-regex {} + transform-unicode-escapes {} + transform-unicode-regex {} + transform-spread {} + transform-destructuring {} + transform-block-scoping {} + transform-typeof-symbol {} + transform-new-target {} + transform-regenerator {} + transform-member-expression-literals {} + transform-property-literals {} + transform-reserved-words {} + proposal-export-namespace-from { "chrome":"55" } + syntax-dynamic-import { "chrome":"55" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "55" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-force-all-transforms/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol.description { "chrome":"55" } + es.symbol.async-iterator { "chrome":"55" } + es.array.flat { "chrome":"55" } + es.array.flat-map { "chrome":"55" } + es.array.iterator { "chrome":"55" } + es.array.reduce { "chrome":"55" } + es.array.reduce-right { "chrome":"55" } + es.array.sort { "chrome":"55" } + es.array.unscopables.flat { "chrome":"55" } + es.array.unscopables.flat-map { "chrome":"55" } + es.math.hypot { "chrome":"55" } + es.object.define-getter { "chrome":"55" } + es.object.define-setter { "chrome":"55" } + es.object.from-entries { "chrome":"55" } + es.object.lookup-getter { "chrome":"55" } + es.object.lookup-setter { "chrome":"55" } + es.promise { "chrome":"55" } + es.promise.finally { "chrome":"55" } + es.string.pad-end { "chrome":"55" } + es.string.pad-start { "chrome":"55" } + es.string.replace { "chrome":"55" } + es.string.trim { "chrome":"55" } + es.string.trim-end { "chrome":"55" } + es.string.trim-start { "chrome":"55" } + web.dom-collections.for-each { "chrome":"55" } + web.dom-collections.iterator { "chrome":"55" } + web.immediate { "chrome":"55" } + web.queue-microtask { "chrome":"55" } + web.url { "chrome":"55" } + web.url.to-json { "chrome":"55" } + web.url-search-params { "chrome":"55" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/input.js new file mode 100644 index 0000000000..e31333abc5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/input.js @@ -0,0 +1 @@ +function hasAnyoneSeenImportBabelPolyfill() { return false }; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/options.json new file mode 100644 index 0000000000..06c8e01e63 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "node": 6 + }, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/stdout.txt new file mode 100644 index 0000000000..af031a45e2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/stdout.txt @@ -0,0 +1,39 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "node": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "node":"6" } + proposal-logical-assignment-operators { "node":"6" } + proposal-nullish-coalescing-operator { "node":"6" } + proposal-optional-chaining { "node":"6" } + proposal-json-strings { "node":"6" } + proposal-optional-catch-binding { "node":"6" } + proposal-async-generator-functions { "node":"6" } + proposal-object-rest-spread { "node":"6" } + transform-dotall-regex { "node":"6" } + proposal-unicode-property-regex { "node":"6" } + transform-named-capturing-groups-regex { "node":"6" } + transform-async-to-generator { "node":"6" } + transform-exponentiation-operator { "node":"6" } + transform-function-name { "node":"6" } + transform-for-of { "node":"6" } + transform-destructuring { "node":"6" } + proposal-export-namespace-from { "node":"6" } + transform-modules-commonjs { "node":"6" } + proposal-dynamic-import { "node":"6" } +corejs3: `DEBUG` option + +Using targets: { + "node": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-no-import/input.js] +The entry point for the corejs3 polyfill has not been found. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/input.mjs new file mode 100644 index 0000000000..b721678e02 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/proposals'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/options.json new file mode 100644 index 0000000000..c33ddf46d3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "useBuiltIns": "entry", + "corejs": { "version": 3, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/stdout.txt new file mode 100644 index 0000000000..09b941d8c4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/stdout.txt @@ -0,0 +1,114 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + esnext.aggregate-error { "chrome":"71" } + esnext.array.last-index { "chrome":"71" } + esnext.array.last-item { "chrome":"71" } + esnext.composite-key { "chrome":"71" } + esnext.composite-symbol { "chrome":"71" } + esnext.map.delete-all { "chrome":"71" } + esnext.map.every { "chrome":"71" } + esnext.map.filter { "chrome":"71" } + esnext.map.find { "chrome":"71" } + esnext.map.find-key { "chrome":"71" } + esnext.map.from { "chrome":"71" } + esnext.map.group-by { "chrome":"71" } + esnext.map.includes { "chrome":"71" } + esnext.map.key-by { "chrome":"71" } + esnext.map.key-of { "chrome":"71" } + esnext.map.map-keys { "chrome":"71" } + esnext.map.map-values { "chrome":"71" } + esnext.map.merge { "chrome":"71" } + esnext.map.of { "chrome":"71" } + esnext.map.reduce { "chrome":"71" } + esnext.map.some { "chrome":"71" } + esnext.map.update { "chrome":"71" } + esnext.math.clamp { "chrome":"71" } + esnext.math.deg-per-rad { "chrome":"71" } + esnext.math.degrees { "chrome":"71" } + esnext.math.fscale { "chrome":"71" } + esnext.math.iaddh { "chrome":"71" } + esnext.math.imulh { "chrome":"71" } + esnext.math.isubh { "chrome":"71" } + esnext.math.rad-per-deg { "chrome":"71" } + esnext.math.radians { "chrome":"71" } + esnext.math.scale { "chrome":"71" } + esnext.math.seeded-prng { "chrome":"71" } + esnext.math.signbit { "chrome":"71" } + esnext.math.umulh { "chrome":"71" } + esnext.number.from-string { "chrome":"71" } + esnext.observable { "chrome":"71" } + esnext.promise.all-settled { "chrome":"71" } + esnext.promise.any { "chrome":"71" } + esnext.promise.try { "chrome":"71" } + esnext.reflect.define-metadata { "chrome":"71" } + esnext.reflect.delete-metadata { "chrome":"71" } + esnext.reflect.get-metadata { "chrome":"71" } + esnext.reflect.get-metadata-keys { "chrome":"71" } + esnext.reflect.get-own-metadata { "chrome":"71" } + esnext.reflect.get-own-metadata-keys { "chrome":"71" } + esnext.reflect.has-metadata { "chrome":"71" } + esnext.reflect.has-own-metadata { "chrome":"71" } + esnext.reflect.metadata { "chrome":"71" } + esnext.set.add-all { "chrome":"71" } + esnext.set.delete-all { "chrome":"71" } + esnext.set.difference { "chrome":"71" } + esnext.set.every { "chrome":"71" } + esnext.set.filter { "chrome":"71" } + esnext.set.find { "chrome":"71" } + esnext.set.from { "chrome":"71" } + esnext.set.intersection { "chrome":"71" } + esnext.set.is-disjoint-from { "chrome":"71" } + esnext.set.is-subset-of { "chrome":"71" } + esnext.set.is-superset-of { "chrome":"71" } + esnext.set.join { "chrome":"71" } + esnext.set.map { "chrome":"71" } + esnext.set.of { "chrome":"71" } + esnext.set.reduce { "chrome":"71" } + esnext.set.some { "chrome":"71" } + esnext.set.symmetric-difference { "chrome":"71" } + esnext.set.union { "chrome":"71" } + esnext.string.at { "chrome":"71" } + esnext.string.code-points { "chrome":"71" } + esnext.string.match-all { "chrome":"71" } + esnext.string.replace-all { "chrome":"71" } + esnext.symbol.dispose { "chrome":"71" } + esnext.symbol.observable { "chrome":"71" } + esnext.symbol.pattern-match { "chrome":"71" } + esnext.weak-map.delete-all { "chrome":"71" } + esnext.weak-map.from { "chrome":"71" } + esnext.weak-map.of { "chrome":"71" } + esnext.weak-set.add-all { "chrome":"71" } + esnext.weak-set.delete-all { "chrome":"71" } + esnext.weak-set.from { "chrome":"71" } + esnext.weak-set.of { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/input.mjs new file mode 100644 index 0000000000..b721678e02 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/proposals'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/options.json new file mode 100644 index 0000000000..6d9fe795cc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/options.json @@ -0,0 +1,15 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "useBuiltIns": "entry", + "targets": { "browsers": "ie 6" }, + "corejs": { "version": 3, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/stdout.txt new file mode 100644 index 0000000000..b0b710ac5d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/stdout.txt @@ -0,0 +1,146 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-proposals/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.map { "ie":"6" } + esnext.aggregate-error { "ie":"6" } + esnext.array.last-index { "ie":"6" } + esnext.array.last-item { "ie":"6" } + esnext.composite-key { "ie":"6" } + esnext.composite-symbol { "ie":"6" } + esnext.global-this { "ie":"6" } + esnext.map.delete-all { "ie":"6" } + esnext.map.every { "ie":"6" } + esnext.map.filter { "ie":"6" } + esnext.map.find { "ie":"6" } + esnext.map.find-key { "ie":"6" } + esnext.map.from { "ie":"6" } + esnext.map.group-by { "ie":"6" } + esnext.map.includes { "ie":"6" } + esnext.map.key-by { "ie":"6" } + esnext.map.key-of { "ie":"6" } + esnext.map.map-keys { "ie":"6" } + esnext.map.map-values { "ie":"6" } + esnext.map.merge { "ie":"6" } + esnext.map.of { "ie":"6" } + esnext.map.reduce { "ie":"6" } + esnext.map.some { "ie":"6" } + esnext.map.update { "ie":"6" } + esnext.math.clamp { "ie":"6" } + esnext.math.deg-per-rad { "ie":"6" } + esnext.math.degrees { "ie":"6" } + esnext.math.fscale { "ie":"6" } + esnext.math.iaddh { "ie":"6" } + esnext.math.imulh { "ie":"6" } + esnext.math.isubh { "ie":"6" } + esnext.math.rad-per-deg { "ie":"6" } + esnext.math.radians { "ie":"6" } + esnext.math.scale { "ie":"6" } + esnext.math.seeded-prng { "ie":"6" } + esnext.math.signbit { "ie":"6" } + esnext.math.umulh { "ie":"6" } + esnext.number.from-string { "ie":"6" } + esnext.observable { "ie":"6" } + esnext.promise.all-settled { "ie":"6" } + esnext.promise.any { "ie":"6" } + esnext.promise.try { "ie":"6" } + esnext.reflect.define-metadata { "ie":"6" } + esnext.reflect.delete-metadata { "ie":"6" } + esnext.reflect.get-metadata { "ie":"6" } + esnext.reflect.get-metadata-keys { "ie":"6" } + esnext.reflect.get-own-metadata { "ie":"6" } + esnext.reflect.get-own-metadata-keys { "ie":"6" } + esnext.reflect.has-metadata { "ie":"6" } + esnext.reflect.has-own-metadata { "ie":"6" } + esnext.reflect.metadata { "ie":"6" } + esnext.set.add-all { "ie":"6" } + esnext.set.delete-all { "ie":"6" } + esnext.set.difference { "ie":"6" } + esnext.set.every { "ie":"6" } + esnext.set.filter { "ie":"6" } + esnext.set.find { "ie":"6" } + esnext.set.from { "ie":"6" } + esnext.set.intersection { "ie":"6" } + esnext.set.is-disjoint-from { "ie":"6" } + esnext.set.is-subset-of { "ie":"6" } + esnext.set.is-superset-of { "ie":"6" } + esnext.set.join { "ie":"6" } + esnext.set.map { "ie":"6" } + esnext.set.of { "ie":"6" } + esnext.set.reduce { "ie":"6" } + esnext.set.some { "ie":"6" } + esnext.set.symmetric-difference { "ie":"6" } + esnext.set.union { "ie":"6" } + esnext.string.at { "ie":"6" } + esnext.string.code-points { "ie":"6" } + esnext.string.match-all { "ie":"6" } + esnext.string.replace-all { "ie":"6" } + esnext.symbol.dispose { "ie":"6" } + esnext.symbol.observable { "ie":"6" } + esnext.symbol.pattern-match { "ie":"6" } + esnext.weak-map.delete-all { "ie":"6" } + esnext.weak-map.from { "ie":"6" } + esnext.weak-map.of { "ie":"6" } + esnext.weak-set.add-all { "ie":"6" } + esnext.weak-set.delete-all { "ie":"6" } + esnext.weak-set.from { "ie":"6" } + esnext.weak-set.of { "ie":"6" } + web.url { "ie":"6" } + web.url.to-json { "ie":"6" } + web.url-search-params { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/input.mjs new file mode 100644 index 0000000000..b535f6a2cc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/input.mjs @@ -0,0 +1 @@ +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt new file mode 100644 index 0000000000..2b034e5d3a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt @@ -0,0 +1,35 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/input.mjs] +The entry point for the corejs3 polyfill has not been found. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/input.mjs new file mode 100644 index 0000000000..b535f6a2cc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/input.mjs @@ -0,0 +1 @@ +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt new file mode 100644 index 0000000000..985d041f18 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt @@ -0,0 +1,35 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/input.mjs] +The entry point for the corejs3 polyfill has not been found. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/input.mjs new file mode 100644 index 0000000000..694e78444f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/es/object'; +import 'core-js/features/reflect'; +import 'core-js/something'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt new file mode 100644 index 0000000000..7eae6fd02f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt @@ -0,0 +1,45 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.object.from-entries { "chrome":"71" } + esnext.reflect.define-metadata { "chrome":"71" } + esnext.reflect.delete-metadata { "chrome":"71" } + esnext.reflect.get-metadata { "chrome":"71" } + esnext.reflect.get-metadata-keys { "chrome":"71" } + esnext.reflect.get-own-metadata { "chrome":"71" } + esnext.reflect.get-own-metadata-keys { "chrome":"71" } + esnext.reflect.has-metadata { "chrome":"71" } + esnext.reflect.has-own-metadata { "chrome":"71" } + esnext.reflect.metadata { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/input.mjs new file mode 100644 index 0000000000..694e78444f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/input.mjs @@ -0,0 +1,4 @@ +import 'core-js/es/object'; +import 'core-js/features/reflect'; +import 'core-js/something'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/options.json new file mode 100644 index 0000000000..f7413b5847 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt new file mode 100644 index 0000000000..bdd508a2ea --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt @@ -0,0 +1,112 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "ie":"6" } + es.json.to-string-tag { "ie":"6" } + es.math.to-string-tag { "ie":"6" } + es.object.assign { "ie":"6" } + es.object.create { "ie":"6" } + es.object.define-getter { "ie":"6" } + es.object.define-properties { "ie":"6" } + es.object.define-property { "ie":"6" } + es.object.define-setter { "ie":"6" } + es.object.entries { "ie":"6" } + es.object.freeze { "ie":"6" } + es.object.from-entries { "ie":"6" } + es.object.get-own-property-descriptor { "ie":"6" } + es.object.get-own-property-descriptors { "ie":"6" } + es.object.get-own-property-names { "ie":"6" } + es.object.get-prototype-of { "ie":"6" } + es.object.is { "ie":"6" } + es.object.is-extensible { "ie":"6" } + es.object.is-frozen { "ie":"6" } + es.object.is-sealed { "ie":"6" } + es.object.keys { "ie":"6" } + es.object.lookup-getter { "ie":"6" } + es.object.lookup-setter { "ie":"6" } + es.object.prevent-extensions { "ie":"6" } + es.object.seal { "ie":"6" } + es.object.set-prototype-of { "ie":"6" } + es.object.to-string { "ie":"6" } + es.object.values { "ie":"6" } + es.reflect.apply { "ie":"6" } + es.reflect.construct { "ie":"6" } + es.reflect.define-property { "ie":"6" } + es.reflect.delete-property { "ie":"6" } + es.reflect.get { "ie":"6" } + es.reflect.get-own-property-descriptor { "ie":"6" } + es.reflect.get-prototype-of { "ie":"6" } + es.reflect.has { "ie":"6" } + es.reflect.is-extensible { "ie":"6" } + es.reflect.own-keys { "ie":"6" } + es.reflect.prevent-extensions { "ie":"6" } + es.reflect.set { "ie":"6" } + es.reflect.set-prototype-of { "ie":"6" } + esnext.reflect.define-metadata { "ie":"6" } + esnext.reflect.delete-metadata { "ie":"6" } + esnext.reflect.get-metadata { "ie":"6" } + esnext.reflect.get-metadata-keys { "ie":"6" } + esnext.reflect.get-own-metadata { "ie":"6" } + esnext.reflect.get-own-metadata-keys { "ie":"6" } + esnext.reflect.has-metadata { "ie":"6" } + esnext.reflect.has-own-metadata { "ie":"6" } + esnext.reflect.metadata { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/options.json new file mode 100644 index 0000000000..29b3f9326f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "ie 10, ios 9, safari 7, edge 13, chrome 54, firefox 49" + }, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/stdout.txt new file mode 100644 index 0000000000..fc4dbd8f17 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/stdout.txt @@ -0,0 +1,267 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "edge": "13", + "firefox": "49", + "ie": "10", + "ios": "9", + "safari": "7" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-logical-assignment-operators { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-nullish-coalescing-operator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-optional-chaining { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-json-strings { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-optional-catch-binding { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-parameters { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-async-generator-functions { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-object-rest-spread { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-dotall-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-unicode-property-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-named-capturing-groups-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-async-to-generator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-exponentiation-operator { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-template-literals { "ie":"10", "ios":"9", "safari":"7" } + transform-literals { "firefox":"49", "ie":"10", "safari":"7" } + transform-function-name { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-arrow-functions { "ie":"10", "ios":"9", "safari":"7" } + transform-block-scoped-functions { "ie":"10", "ios":"9", "safari":"7" } + transform-classes { "ie":"10", "ios":"9", "safari":"7" } + transform-object-super { "ie":"10", "ios":"9", "safari":"7" } + transform-shorthand-properties { "ie":"10", "safari":"7" } + transform-duplicate-keys { "ie":"10", "safari":"7" } + transform-computed-properties { "ie":"10", "safari":"7" } + transform-for-of { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-sticky-regex { "ie":"10", "ios":"9", "safari":"7" } + transform-unicode-escapes { "firefox":"49", "ie":"10", "safari":"7" } + transform-unicode-regex { "ie":"10", "ios":"9", "safari":"7" } + transform-spread { "ie":"10", "ios":"9", "safari":"7" } + transform-destructuring { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-block-scoping { "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-typeof-symbol { "ie":"10", "safari":"7" } + transform-new-target { "edge":"13", "ie":"10", "ios":"9", "safari":"7" } + transform-regenerator { "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-export-namespace-from { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + transform-modules-commonjs { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + proposal-dynamic-import { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "54", + "edge": "13", + "firefox": "49", + "ie": "10", + "ios": "9", + "safari": "7" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-targets/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.description { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.async-iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.has-instance { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.is-concat-spreadable { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.match { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.replace { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.search { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.species { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.split { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.to-primitive { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.to-string-tag { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.symbol.unscopables { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.concat { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.copy-within { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.every { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.fill { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.filter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.find { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.find-index { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.flat { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.flat-map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.for-each { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.from { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.includes { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.index-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.join { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.last-index-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.reduce { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.reduce-right { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.reverse { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.slice { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.some { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.sort { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.species { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.splice { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.unscopables.flat { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array.unscopables.flat-map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array-buffer.constructor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array-buffer.is-view { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.array-buffer.slice { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.data-view { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.date.to-iso-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.date.to-json { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.date.to-primitive { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.function.has-instance { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.function.name { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.json.to-string-tag { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.acosh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.asinh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.atanh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.cbrt { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.clz32 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.cosh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.expm1 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.fround { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.hypot { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.imul { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.log10 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.log1p { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.log2 { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.sign { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.sinh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.tanh { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.to-string-tag { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.math.trunc { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.constructor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.epsilon { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.is-finite { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.is-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.is-nan { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.is-safe-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.max-safe-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.min-safe-integer { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.parse-float { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.parse-int { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.to-fixed { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.number.to-precision { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.assign { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.define-getter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.define-setter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.entries { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.freeze { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.from-entries { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.get-own-property-descriptor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.get-own-property-descriptors { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.get-own-property-names { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.get-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.is { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.is-extensible { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.is-frozen { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.is-sealed { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.keys { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.lookup-getter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.lookup-setter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.prevent-extensions { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.seal { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.set-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.to-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.object.values { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.parse-float { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.parse-int { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.promise { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.promise.finally { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.apply { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.construct { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.define-property { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.delete-property { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.get { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.get-own-property-descriptor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.get-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.has { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.is-extensible { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.own-keys { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.prevent-extensions { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.reflect.set-prototype-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.regexp.constructor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.regexp.exec { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.regexp.flags { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.regexp.to-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.code-point-at { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.ends-with { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.from-code-point { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.includes { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.match { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.pad-end { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.pad-start { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.raw { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.repeat { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.replace { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.search { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.split { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.starts-with { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.trim { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.trim-end { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.trim-start { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.anchor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.big { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.blink { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.bold { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.fixed { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.fontcolor { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.fontsize { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.italics { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.link { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.small { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.strike { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.sub { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.string.sup { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.float32-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.float64-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.int8-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.int16-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.int32-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.uint8-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.uint8-clamped-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.uint16-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.uint32-array { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.copy-within { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.every { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.fill { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.filter { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.find { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.find-index { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.for-each { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.from { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.includes { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.index-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.join { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.last-index-of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.of { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.reduce { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.reduce-right { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.reverse { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.slice { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.some { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.sort { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.subarray { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.to-locale-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.typed-array.to-string { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.weak-map { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + es.weak-set { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.dom-collections.for-each { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.dom-collections.iterator { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.immediate { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.queue-microtask { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.url { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.url.to-json { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } + web.url-search-params { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt new file mode 100644 index 0000000000..cf1631a337 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt @@ -0,0 +1,42 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.array.reduce { "chrome":"71" } + es.array.reduce-right { "chrome":"71" } + es.array.unscopables.flat { "chrome":"71" } + es.array.unscopables.flat-map { "chrome":"71" } + es.math.hypot { "chrome":"71" } + es.object.from-entries { "chrome":"71" } + web.immediate { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/options.json new file mode 100644 index 0000000000..016c09c862 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "samsung 8.2" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt new file mode 100644 index 0000000000..3f71313b9a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt @@ -0,0 +1,58 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "samsung": "8.2" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "samsung":"8.2" } + proposal-private-methods { "samsung":"8.2" } + proposal-numeric-separator { "samsung":"8.2" } + proposal-logical-assignment-operators { "samsung":"8.2" } + proposal-nullish-coalescing-operator { "samsung":"8.2" } + proposal-optional-chaining { "samsung":"8.2" } + proposal-json-strings { "samsung":"8.2" } + proposal-optional-catch-binding { "samsung":"8.2" } + syntax-async-generators { "samsung":"8.2" } + syntax-object-rest-spread { "samsung":"8.2" } + proposal-unicode-property-regex { "samsung":"8.2" } + transform-named-capturing-groups-regex { "samsung":"8.2" } + proposal-export-namespace-from { "samsung":"8.2" } + transform-modules-commonjs { "samsung":"8.2" } + proposal-dynamic-import { "samsung":"8.2" } +corejs3: `DEBUG` option + +Using targets: { + "samsung": "8.2" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol.description { "samsung":"8.2" } + es.array.flat { "samsung":"8.2" } + es.array.flat-map { "samsung":"8.2" } + es.array.iterator { "samsung":"8.2" } + es.array.reduce { "samsung":"8.2" } + es.array.reduce-right { "samsung":"8.2" } + es.array.unscopables.flat { "samsung":"8.2" } + es.array.unscopables.flat-map { "samsung":"8.2" } + es.math.hypot { "samsung":"8.2" } + es.object.from-entries { "samsung":"8.2" } + es.promise { "samsung":"8.2" } + es.promise.finally { "samsung":"8.2" } + es.string.replace { "samsung":"8.2" } + es.string.trim-end { "samsung":"8.2" } + es.string.trim-start { "samsung":"8.2" } + web.dom-collections.iterator { "samsung":"8.2" } + web.immediate { "samsung":"8.2" } + web.queue-microtask { "samsung":"8.2" } + web.url { "samsung":"8.2" } + web.url.to-json { "samsung":"8.2" } + web.url-search-params { "samsung":"8.2" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/options.json new file mode 100644 index 0000000000..f7413b5847 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { "browsers": "ie 6" }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt new file mode 100644 index 0000000000..19018466b1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt @@ -0,0 +1,269 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "ie":"6" } + es.symbol.description { "ie":"6" } + es.symbol.async-iterator { "ie":"6" } + es.symbol.has-instance { "ie":"6" } + es.symbol.is-concat-spreadable { "ie":"6" } + es.symbol.iterator { "ie":"6" } + es.symbol.match { "ie":"6" } + es.symbol.replace { "ie":"6" } + es.symbol.search { "ie":"6" } + es.symbol.species { "ie":"6" } + es.symbol.split { "ie":"6" } + es.symbol.to-primitive { "ie":"6" } + es.symbol.to-string-tag { "ie":"6" } + es.symbol.unscopables { "ie":"6" } + es.array.concat { "ie":"6" } + es.array.copy-within { "ie":"6" } + es.array.every { "ie":"6" } + es.array.fill { "ie":"6" } + es.array.filter { "ie":"6" } + es.array.find { "ie":"6" } + es.array.find-index { "ie":"6" } + es.array.flat { "ie":"6" } + es.array.flat-map { "ie":"6" } + es.array.for-each { "ie":"6" } + es.array.from { "ie":"6" } + es.array.includes { "ie":"6" } + es.array.index-of { "ie":"6" } + es.array.is-array { "ie":"6" } + es.array.iterator { "ie":"6" } + es.array.join { "ie":"6" } + es.array.last-index-of { "ie":"6" } + es.array.map { "ie":"6" } + es.array.of { "ie":"6" } + es.array.reduce { "ie":"6" } + es.array.reduce-right { "ie":"6" } + es.array.slice { "ie":"6" } + es.array.some { "ie":"6" } + es.array.sort { "ie":"6" } + es.array.species { "ie":"6" } + es.array.splice { "ie":"6" } + es.array.unscopables.flat { "ie":"6" } + es.array.unscopables.flat-map { "ie":"6" } + es.array-buffer.constructor { "ie":"6" } + es.array-buffer.is-view { "ie":"6" } + es.array-buffer.slice { "ie":"6" } + es.data-view { "ie":"6" } + es.date.now { "ie":"6" } + es.date.to-iso-string { "ie":"6" } + es.date.to-json { "ie":"6" } + es.date.to-primitive { "ie":"6" } + es.date.to-string { "ie":"6" } + es.function.bind { "ie":"6" } + es.function.has-instance { "ie":"6" } + es.function.name { "ie":"6" } + es.json.to-string-tag { "ie":"6" } + es.map { "ie":"6" } + es.math.acosh { "ie":"6" } + es.math.asinh { "ie":"6" } + es.math.atanh { "ie":"6" } + es.math.cbrt { "ie":"6" } + es.math.clz32 { "ie":"6" } + es.math.cosh { "ie":"6" } + es.math.expm1 { "ie":"6" } + es.math.fround { "ie":"6" } + es.math.hypot { "ie":"6" } + es.math.imul { "ie":"6" } + es.math.log10 { "ie":"6" } + es.math.log1p { "ie":"6" } + es.math.log2 { "ie":"6" } + es.math.sign { "ie":"6" } + es.math.sinh { "ie":"6" } + es.math.tanh { "ie":"6" } + es.math.to-string-tag { "ie":"6" } + es.math.trunc { "ie":"6" } + es.number.constructor { "ie":"6" } + es.number.epsilon { "ie":"6" } + es.number.is-finite { "ie":"6" } + es.number.is-integer { "ie":"6" } + es.number.is-nan { "ie":"6" } + es.number.is-safe-integer { "ie":"6" } + es.number.max-safe-integer { "ie":"6" } + es.number.min-safe-integer { "ie":"6" } + es.number.parse-float { "ie":"6" } + es.number.parse-int { "ie":"6" } + es.number.to-fixed { "ie":"6" } + es.number.to-precision { "ie":"6" } + es.object.assign { "ie":"6" } + es.object.create { "ie":"6" } + es.object.define-getter { "ie":"6" } + es.object.define-properties { "ie":"6" } + es.object.define-property { "ie":"6" } + es.object.define-setter { "ie":"6" } + es.object.entries { "ie":"6" } + es.object.freeze { "ie":"6" } + es.object.from-entries { "ie":"6" } + es.object.get-own-property-descriptor { "ie":"6" } + es.object.get-own-property-descriptors { "ie":"6" } + es.object.get-own-property-names { "ie":"6" } + es.object.get-prototype-of { "ie":"6" } + es.object.is { "ie":"6" } + es.object.is-extensible { "ie":"6" } + es.object.is-frozen { "ie":"6" } + es.object.is-sealed { "ie":"6" } + es.object.keys { "ie":"6" } + es.object.lookup-getter { "ie":"6" } + es.object.lookup-setter { "ie":"6" } + es.object.prevent-extensions { "ie":"6" } + es.object.seal { "ie":"6" } + es.object.set-prototype-of { "ie":"6" } + es.object.to-string { "ie":"6" } + es.object.values { "ie":"6" } + es.parse-float { "ie":"6" } + es.parse-int { "ie":"6" } + es.promise { "ie":"6" } + es.promise.finally { "ie":"6" } + es.reflect.apply { "ie":"6" } + es.reflect.construct { "ie":"6" } + es.reflect.define-property { "ie":"6" } + es.reflect.delete-property { "ie":"6" } + es.reflect.get { "ie":"6" } + es.reflect.get-own-property-descriptor { "ie":"6" } + es.reflect.get-prototype-of { "ie":"6" } + es.reflect.has { "ie":"6" } + es.reflect.is-extensible { "ie":"6" } + es.reflect.own-keys { "ie":"6" } + es.reflect.prevent-extensions { "ie":"6" } + es.reflect.set { "ie":"6" } + es.reflect.set-prototype-of { "ie":"6" } + es.regexp.constructor { "ie":"6" } + es.regexp.exec { "ie":"6" } + es.regexp.flags { "ie":"6" } + es.regexp.to-string { "ie":"6" } + es.set { "ie":"6" } + es.string.code-point-at { "ie":"6" } + es.string.ends-with { "ie":"6" } + es.string.from-code-point { "ie":"6" } + es.string.includes { "ie":"6" } + es.string.iterator { "ie":"6" } + es.string.match { "ie":"6" } + es.string.pad-end { "ie":"6" } + es.string.pad-start { "ie":"6" } + es.string.raw { "ie":"6" } + es.string.repeat { "ie":"6" } + es.string.replace { "ie":"6" } + es.string.search { "ie":"6" } + es.string.split { "ie":"6" } + es.string.starts-with { "ie":"6" } + es.string.trim { "ie":"6" } + es.string.trim-end { "ie":"6" } + es.string.trim-start { "ie":"6" } + es.string.anchor { "ie":"6" } + es.string.big { "ie":"6" } + es.string.blink { "ie":"6" } + es.string.bold { "ie":"6" } + es.string.fixed { "ie":"6" } + es.string.fontcolor { "ie":"6" } + es.string.fontsize { "ie":"6" } + es.string.italics { "ie":"6" } + es.string.link { "ie":"6" } + es.string.small { "ie":"6" } + es.string.strike { "ie":"6" } + es.string.sub { "ie":"6" } + es.string.sup { "ie":"6" } + es.typed-array.float32-array { "ie":"6" } + es.typed-array.float64-array { "ie":"6" } + es.typed-array.int8-array { "ie":"6" } + es.typed-array.int16-array { "ie":"6" } + es.typed-array.int32-array { "ie":"6" } + es.typed-array.uint8-array { "ie":"6" } + es.typed-array.uint8-clamped-array { "ie":"6" } + es.typed-array.uint16-array { "ie":"6" } + es.typed-array.uint32-array { "ie":"6" } + es.typed-array.copy-within { "ie":"6" } + es.typed-array.every { "ie":"6" } + es.typed-array.fill { "ie":"6" } + es.typed-array.filter { "ie":"6" } + es.typed-array.find { "ie":"6" } + es.typed-array.find-index { "ie":"6" } + es.typed-array.for-each { "ie":"6" } + es.typed-array.from { "ie":"6" } + es.typed-array.includes { "ie":"6" } + es.typed-array.index-of { "ie":"6" } + es.typed-array.iterator { "ie":"6" } + es.typed-array.join { "ie":"6" } + es.typed-array.last-index-of { "ie":"6" } + es.typed-array.map { "ie":"6" } + es.typed-array.of { "ie":"6" } + es.typed-array.reduce { "ie":"6" } + es.typed-array.reduce-right { "ie":"6" } + es.typed-array.reverse { "ie":"6" } + es.typed-array.set { "ie":"6" } + es.typed-array.slice { "ie":"6" } + es.typed-array.some { "ie":"6" } + es.typed-array.sort { "ie":"6" } + es.typed-array.subarray { "ie":"6" } + es.typed-array.to-locale-string { "ie":"6" } + es.typed-array.to-string { "ie":"6" } + es.weak-map { "ie":"6" } + es.weak-set { "ie":"6" } + web.dom-collections.for-each { "ie":"6" } + web.dom-collections.iterator { "ie":"6" } + web.immediate { "ie":"6" } + web.queue-microtask { "ie":"6" } + web.timers { "ie":"6" } + web.url { "ie":"6" } + web.url.to-json { "ie":"6" } + web.url-search-params { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/input.mjs new file mode 100644 index 0000000000..d7e24c275a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stage'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt new file mode 100644 index 0000000000..e0ddc17f57 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt @@ -0,0 +1,116 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + esnext.aggregate-error { "chrome":"71" } + esnext.array.last-index { "chrome":"71" } + esnext.array.last-item { "chrome":"71" } + esnext.composite-key { "chrome":"71" } + esnext.composite-symbol { "chrome":"71" } + esnext.map.delete-all { "chrome":"71" } + esnext.map.every { "chrome":"71" } + esnext.map.filter { "chrome":"71" } + esnext.map.find { "chrome":"71" } + esnext.map.find-key { "chrome":"71" } + esnext.map.from { "chrome":"71" } + esnext.map.group-by { "chrome":"71" } + esnext.map.includes { "chrome":"71" } + esnext.map.key-by { "chrome":"71" } + esnext.map.key-of { "chrome":"71" } + esnext.map.map-keys { "chrome":"71" } + esnext.map.map-values { "chrome":"71" } + esnext.map.merge { "chrome":"71" } + esnext.map.of { "chrome":"71" } + esnext.map.reduce { "chrome":"71" } + esnext.map.some { "chrome":"71" } + esnext.map.update { "chrome":"71" } + esnext.math.clamp { "chrome":"71" } + esnext.math.deg-per-rad { "chrome":"71" } + esnext.math.degrees { "chrome":"71" } + esnext.math.fscale { "chrome":"71" } + esnext.math.iaddh { "chrome":"71" } + esnext.math.imulh { "chrome":"71" } + esnext.math.isubh { "chrome":"71" } + esnext.math.rad-per-deg { "chrome":"71" } + esnext.math.radians { "chrome":"71" } + esnext.math.scale { "chrome":"71" } + esnext.math.seeded-prng { "chrome":"71" } + esnext.math.signbit { "chrome":"71" } + esnext.math.umulh { "chrome":"71" } + esnext.number.from-string { "chrome":"71" } + esnext.observable { "chrome":"71" } + esnext.promise.all-settled { "chrome":"71" } + esnext.promise.any { "chrome":"71" } + esnext.promise.try { "chrome":"71" } + esnext.reflect.define-metadata { "chrome":"71" } + esnext.reflect.delete-metadata { "chrome":"71" } + esnext.reflect.get-metadata { "chrome":"71" } + esnext.reflect.get-metadata-keys { "chrome":"71" } + esnext.reflect.get-own-metadata { "chrome":"71" } + esnext.reflect.get-own-metadata-keys { "chrome":"71" } + esnext.reflect.has-metadata { "chrome":"71" } + esnext.reflect.has-own-metadata { "chrome":"71" } + esnext.reflect.metadata { "chrome":"71" } + esnext.set.add-all { "chrome":"71" } + esnext.set.delete-all { "chrome":"71" } + esnext.set.difference { "chrome":"71" } + esnext.set.every { "chrome":"71" } + esnext.set.filter { "chrome":"71" } + esnext.set.find { "chrome":"71" } + esnext.set.from { "chrome":"71" } + esnext.set.intersection { "chrome":"71" } + esnext.set.is-disjoint-from { "chrome":"71" } + esnext.set.is-subset-of { "chrome":"71" } + esnext.set.is-superset-of { "chrome":"71" } + esnext.set.join { "chrome":"71" } + esnext.set.map { "chrome":"71" } + esnext.set.of { "chrome":"71" } + esnext.set.reduce { "chrome":"71" } + esnext.set.some { "chrome":"71" } + esnext.set.symmetric-difference { "chrome":"71" } + esnext.set.union { "chrome":"71" } + esnext.string.at { "chrome":"71" } + esnext.string.code-points { "chrome":"71" } + esnext.string.match-all { "chrome":"71" } + esnext.string.replace-all { "chrome":"71" } + esnext.symbol.dispose { "chrome":"71" } + esnext.symbol.observable { "chrome":"71" } + esnext.symbol.pattern-match { "chrome":"71" } + esnext.weak-map.delete-all { "chrome":"71" } + esnext.weak-map.from { "chrome":"71" } + esnext.weak-map.of { "chrome":"71" } + esnext.weak-set.add-all { "chrome":"71" } + esnext.weak-set.delete-all { "chrome":"71" } + esnext.weak-set.from { "chrome":"71" } + esnext.weak-set.of { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/input.mjs new file mode 100644 index 0000000000..d7e24c275a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stage'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/options.json new file mode 100644 index 0000000000..11f3cbc173 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "targets": { + "browsers": "ie 6" + }, + "debug": true, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt new file mode 100644 index 0000000000..5e7ceecc9c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt @@ -0,0 +1,148 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.map { "ie":"6" } + esnext.aggregate-error { "ie":"6" } + esnext.array.last-index { "ie":"6" } + esnext.array.last-item { "ie":"6" } + esnext.composite-key { "ie":"6" } + esnext.composite-symbol { "ie":"6" } + esnext.global-this { "ie":"6" } + esnext.map.delete-all { "ie":"6" } + esnext.map.every { "ie":"6" } + esnext.map.filter { "ie":"6" } + esnext.map.find { "ie":"6" } + esnext.map.find-key { "ie":"6" } + esnext.map.from { "ie":"6" } + esnext.map.group-by { "ie":"6" } + esnext.map.includes { "ie":"6" } + esnext.map.key-by { "ie":"6" } + esnext.map.key-of { "ie":"6" } + esnext.map.map-keys { "ie":"6" } + esnext.map.map-values { "ie":"6" } + esnext.map.merge { "ie":"6" } + esnext.map.of { "ie":"6" } + esnext.map.reduce { "ie":"6" } + esnext.map.some { "ie":"6" } + esnext.map.update { "ie":"6" } + esnext.math.clamp { "ie":"6" } + esnext.math.deg-per-rad { "ie":"6" } + esnext.math.degrees { "ie":"6" } + esnext.math.fscale { "ie":"6" } + esnext.math.iaddh { "ie":"6" } + esnext.math.imulh { "ie":"6" } + esnext.math.isubh { "ie":"6" } + esnext.math.rad-per-deg { "ie":"6" } + esnext.math.radians { "ie":"6" } + esnext.math.scale { "ie":"6" } + esnext.math.seeded-prng { "ie":"6" } + esnext.math.signbit { "ie":"6" } + esnext.math.umulh { "ie":"6" } + esnext.number.from-string { "ie":"6" } + esnext.observable { "ie":"6" } + esnext.promise.all-settled { "ie":"6" } + esnext.promise.any { "ie":"6" } + esnext.promise.try { "ie":"6" } + esnext.reflect.define-metadata { "ie":"6" } + esnext.reflect.delete-metadata { "ie":"6" } + esnext.reflect.get-metadata { "ie":"6" } + esnext.reflect.get-metadata-keys { "ie":"6" } + esnext.reflect.get-own-metadata { "ie":"6" } + esnext.reflect.get-own-metadata-keys { "ie":"6" } + esnext.reflect.has-metadata { "ie":"6" } + esnext.reflect.has-own-metadata { "ie":"6" } + esnext.reflect.metadata { "ie":"6" } + esnext.set.add-all { "ie":"6" } + esnext.set.delete-all { "ie":"6" } + esnext.set.difference { "ie":"6" } + esnext.set.every { "ie":"6" } + esnext.set.filter { "ie":"6" } + esnext.set.find { "ie":"6" } + esnext.set.from { "ie":"6" } + esnext.set.intersection { "ie":"6" } + esnext.set.is-disjoint-from { "ie":"6" } + esnext.set.is-subset-of { "ie":"6" } + esnext.set.is-superset-of { "ie":"6" } + esnext.set.join { "ie":"6" } + esnext.set.map { "ie":"6" } + esnext.set.of { "ie":"6" } + esnext.set.reduce { "ie":"6" } + esnext.set.some { "ie":"6" } + esnext.set.symmetric-difference { "ie":"6" } + esnext.set.union { "ie":"6" } + esnext.string.at { "ie":"6" } + esnext.string.code-points { "ie":"6" } + esnext.string.match-all { "ie":"6" } + esnext.string.replace-all { "ie":"6" } + esnext.symbol.dispose { "ie":"6" } + esnext.symbol.observable { "ie":"6" } + esnext.symbol.pattern-match { "ie":"6" } + esnext.weak-map.delete-all { "ie":"6" } + esnext.weak-map.from { "ie":"6" } + esnext.weak-map.of { "ie":"6" } + esnext.weak-set.add-all { "ie":"6" } + esnext.weak-set.delete-all { "ie":"6" } + esnext.weak-set.from { "ie":"6" } + esnext.weak-set.of { "ie":"6" } + web.url { "ie":"6" } + web.url.to-json { "ie":"6" } + web.url-search-params { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/options.json new file mode 100644 index 0000000000..7b937537dd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/options.json @@ -0,0 +1,20 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "useBuiltIns": "entry", + "corejs": 3, + "debug": true, + "targets": { + "chrome": 54, + "electron": 0.36, + "node": 6.1, + "ie": 10 + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/stderr.txt new file mode 100644 index 0000000000..290f78ce20 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/stderr.txt @@ -0,0 +1,7 @@ +Warning, the following targets are using a decimal version: + + electron: 0.36 + node: 6.1 + +We recommend using a string for minor/patch versions to avoid numbers like 6.10 +getting parsed as 6.1, which can lead to unexpected behavior. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/stdout.txt new file mode 100644 index 0000000000..171d09dcb7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/stdout.txt @@ -0,0 +1,253 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "electron": "0.36", + "ie": "10", + "node": "6.1" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-logical-assignment-operators { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-nullish-coalescing-operator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-optional-chaining { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-json-strings { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-optional-catch-binding { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-parameters { "electron":"0.36", "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-object-rest-spread { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-dotall-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-unicode-property-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-named-capturing-groups-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-async-to-generator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-exponentiation-operator { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-sticky-regex { "electron":"0.36", "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "electron":"0.36", "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "electron":"0.36", "ie":"10", "node":"6.1" } + transform-block-scoping { "electron":"0.36", "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "electron":"0.36", "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + transform-modules-commonjs { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + proposal-dynamic-import { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "54", + "electron": "0.36", + "ie": "10", + "node": "6.1" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-decimals/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.description { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.async-iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.has-instance { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.is-concat-spreadable { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.match { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.replace { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.search { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.species { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.split { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.to-primitive { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.to-string-tag { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.symbol.unscopables { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.concat { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.copy-within { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.fill { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.filter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.find { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.find-index { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.flat { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.flat-map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.from { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.includes { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.index-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.join { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.last-index-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.reduce { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.reduce-right { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.slice { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.sort { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.species { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.splice { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.unscopables.flat { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array.unscopables.flat-map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array-buffer.constructor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array-buffer.is-view { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.array-buffer.slice { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.date.to-primitive { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.function.has-instance { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.function.name { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.json.to-string-tag { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.acosh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.asinh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.atanh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.cbrt { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.clz32 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.cosh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.expm1 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.fround { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.hypot { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.imul { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.log10 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.log1p { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.log2 { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.sign { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.sinh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.tanh { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.to-string-tag { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.math.trunc { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.constructor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.epsilon { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.is-finite { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.is-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.is-nan { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.is-safe-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.max-safe-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.min-safe-integer { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.parse-float { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.parse-int { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.number.to-fixed { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.assign { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.define-getter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.define-setter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.entries { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.freeze { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.from-entries { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.get-own-property-descriptor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.get-own-property-descriptors { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.get-own-property-names { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.get-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.is { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.is-extensible { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.is-frozen { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.is-sealed { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.keys { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.lookup-getter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.lookup-setter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.prevent-extensions { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.seal { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.set-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.to-string { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.object.values { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.promise { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.promise.finally { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.apply { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.construct { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.define-property { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.delete-property { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.get { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.get-own-property-descriptor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.get-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.has { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.is-extensible { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.own-keys { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.prevent-extensions { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.reflect.set-prototype-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.regexp.constructor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.regexp.exec { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.regexp.flags { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.regexp.to-string { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.code-point-at { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.ends-with { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.from-code-point { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.includes { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.match { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.pad-end { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.pad-start { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.raw { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.repeat { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.replace { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.search { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.split { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.starts-with { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.trim { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.trim-end { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.trim-start { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.anchor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.big { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.blink { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.bold { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.fixed { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.fontcolor { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.fontsize { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.italics { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.link { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.small { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.strike { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.sub { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.string.sup { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.float32-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.float64-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.int8-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.int16-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.int32-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.uint8-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.uint8-clamped-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.uint16-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.uint32-array { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.copy-within { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.every { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.fill { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.filter { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.find { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.find-index { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.for-each { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.from { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.includes { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.index-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.join { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.last-index-of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.of { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.reduce { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.reduce-right { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.reverse { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.slice { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.some { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.sort { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.subarray { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.to-locale-string { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.typed-array.to-string { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.weak-map { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + es.weak-set { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.dom-collections.for-each { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.dom-collections.iterator { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.immediate { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.queue-microtask { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.url { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.url.to-json { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } + web.url-search-params { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/options.json new file mode 100644 index 0000000000..e3f89d06a7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "useBuiltIns": "entry", + "corejs": "3.0", + "debug": true, + "targets": { + "chrome": "54", + "node": "6.10", + "ie": "10" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/stdout.txt new file mode 100644 index 0000000000..1053b92fe3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/stdout.txt @@ -0,0 +1,249 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6.10" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6.10" } + transform-exponentiation-operator { "ie":"10", "node":"6.10" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6.10" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.0/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.description { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.is-concat-spreadable { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.match { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.search { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.species { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.split { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.unscopables { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.concat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.flat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.join { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.reduce { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.reduce-right { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.species { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.splice { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.unscopables.flat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.unscopables.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.is-view { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.date.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es.function.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es.function.name { "chrome":"54", "ie":"10", "node":"6.10" } + es.json.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.acosh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.asinh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.atanh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.cbrt { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.clz32 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.cosh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.expm1 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.fround { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.hypot { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.imul { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log10 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log1p { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log2 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.sign { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.sinh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.tanh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.trunc { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.epsilon { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-finite { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-nan { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.parse-float { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.parse-int { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.to-fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.assign { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.define-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.define-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.entries { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.freeze { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.from-entries { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-frozen { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-sealed { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.keys { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.seal { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.values { "chrome":"54", "ie":"10", "node":"6.10" } + es.promise { "chrome":"54", "ie":"10", "node":"6.10" } + es.promise.finally { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.apply { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.construct { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.define-property { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.has { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.exec { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.flags { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.code-point-at { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.ends-with { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.from-code-point { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.match { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.pad-end { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.pad-start { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.raw { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.repeat { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.search { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.split { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.starts-with { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim-end { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim-start { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.anchor { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.big { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.blink { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.bold { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fontcolor { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fontsize { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.italics { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.link { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.small { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.strike { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.sub { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.sup { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.float32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.float64-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.every { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.for-each { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.index-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.join { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.last-index-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reduce { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reduce-right { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reverse { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.some { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.subarray { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.to-locale-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.weak-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.weak-set { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom-collections.for-each { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom-collections.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + web.immediate { "chrome":"54", "ie":"10", "node":"6.10" } + web.queue-microtask { "chrome":"54", "ie":"10", "node":"6.10" } + web.url { "chrome":"54", "ie":"10", "node":"6.10" } + web.url.to-json { "chrome":"54", "ie":"10", "node":"6.10" } + web.url-search-params { "chrome":"54", "ie":"10", "node":"6.10" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/options.json new file mode 100644 index 0000000000..69bc8e9d06 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "useBuiltIns": "entry", + "corejs": "3.1", + "debug": true, + "targets": { + "chrome": "54", + "node": "6.10", + "ie": "10" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/stdout.txt new file mode 100644 index 0000000000..69007193f8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/stdout.txt @@ -0,0 +1,251 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6.10" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6.10" } + transform-exponentiation-operator { "ie":"10", "node":"6.10" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6.10" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings-minor-3.1/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.description { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.is-concat-spreadable { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.match { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.match-all { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.search { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.species { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.split { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.unscopables { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.concat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.flat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.join { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.reduce { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.reduce-right { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.species { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.splice { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.unscopables.flat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.unscopables.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.is-view { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.date.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es.function.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es.function.name { "chrome":"54", "ie":"10", "node":"6.10" } + es.json.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.acosh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.asinh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.atanh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.cbrt { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.clz32 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.cosh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.expm1 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.fround { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.hypot { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.imul { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log10 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log1p { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log2 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.sign { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.sinh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.tanh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.trunc { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.epsilon { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-finite { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-nan { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.parse-float { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.parse-int { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.to-fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.assign { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.define-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.define-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.entries { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.freeze { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.from-entries { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-frozen { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-sealed { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.keys { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.seal { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.values { "chrome":"54", "ie":"10", "node":"6.10" } + es.promise { "chrome":"54", "ie":"10", "node":"6.10" } + es.promise.finally { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.apply { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.construct { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.define-property { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.has { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.exec { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.flags { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.code-point-at { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.ends-with { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.from-code-point { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.match { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.match-all { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.pad-end { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.pad-start { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.raw { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.repeat { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.search { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.split { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.starts-with { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim-end { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim-start { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.anchor { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.big { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.blink { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.bold { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fontcolor { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fontsize { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.italics { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.link { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.small { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.strike { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.sub { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.sup { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.float32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.float64-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.every { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.for-each { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.index-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.join { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.last-index-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reduce { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reduce-right { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reverse { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.some { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.subarray { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.to-locale-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.weak-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.weak-set { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom-collections.for-each { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom-collections.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + web.immediate { "chrome":"54", "ie":"10", "node":"6.10" } + web.queue-microtask { "chrome":"54", "ie":"10", "node":"6.10" } + web.url { "chrome":"54", "ie":"10", "node":"6.10" } + web.url.to-json { "chrome":"54", "ie":"10", "node":"6.10" } + web.url-search-params { "chrome":"54", "ie":"10", "node":"6.10" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/options.json new file mode 100644 index 0000000000..2f72dab2dc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "useBuiltIns": "entry", + "corejs": 3, + "debug": true, + "targets": { + "chrome": "54", + "node": "6.10", + "ie": "10" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/stdout.txt new file mode 100644 index 0000000000..830d65a5d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/stdout.txt @@ -0,0 +1,249 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6.10" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6.10" } + transform-exponentiation-operator { "ie":"10", "node":"6.10" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6.10" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6.10" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-versions-strings/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.description { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.is-concat-spreadable { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.match { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.search { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.species { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.split { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.symbol.unscopables { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.concat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.flat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.join { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.reduce { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.reduce-right { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.species { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.splice { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.unscopables.flat { "chrome":"54", "ie":"10", "node":"6.10" } + es.array.unscopables.flat-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.is-view { "chrome":"54", "ie":"10", "node":"6.10" } + es.array-buffer.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.date.to-primitive { "chrome":"54", "ie":"10", "node":"6.10" } + es.function.has-instance { "chrome":"54", "ie":"10", "node":"6.10" } + es.function.name { "chrome":"54", "ie":"10", "node":"6.10" } + es.json.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.acosh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.asinh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.atanh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.cbrt { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.clz32 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.cosh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.expm1 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.fround { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.hypot { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.imul { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log10 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log1p { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.log2 { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.sign { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.sinh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.tanh { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.to-string-tag { "chrome":"54", "ie":"10", "node":"6.10" } + es.math.trunc { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.epsilon { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-finite { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-nan { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.parse-float { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.parse-int { "chrome":"54", "ie":"10", "node":"6.10" } + es.number.to-fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.assign { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.define-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.define-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.entries { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.freeze { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.from-entries { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-frozen { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.is-sealed { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.keys { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.seal { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.object.values { "chrome":"54", "ie":"10", "node":"6.10" } + es.promise { "chrome":"54", "ie":"10", "node":"6.10" } + es.promise.finally { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.apply { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.construct { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.define-property { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.has { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.constructor { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.exec { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.flags { "chrome":"54", "ie":"10", "node":"6.10" } + es.regexp.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.code-point-at { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.ends-with { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.from-code-point { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.match { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.pad-end { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.pad-start { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.raw { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.repeat { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.replace { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.search { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.split { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.starts-with { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim-end { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.trim-start { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.anchor { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.big { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.blink { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.bold { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fixed { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fontcolor { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.fontsize { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.italics { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.link { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.small { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.strike { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.sub { "chrome":"54", "ie":"10", "node":"6.10" } + es.string.sup { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.float32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.float64-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.int32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint8-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint16-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.uint32-array { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.copy-within { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.every { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.fill { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.filter { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.find { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.find-index { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.for-each { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.from { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.includes { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.index-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.join { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.last-index-of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.map { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.of { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reduce { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reduce-right { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.reverse { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.set { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.slice { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.some { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.sort { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.subarray { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.to-locale-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.typed-array.to-string { "chrome":"54", "ie":"10", "node":"6.10" } + es.weak-map { "chrome":"54", "ie":"10", "node":"6.10" } + es.weak-set { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom-collections.for-each { "chrome":"54", "ie":"10", "node":"6.10" } + web.dom-collections.iterator { "chrome":"54", "ie":"10", "node":"6.10" } + web.immediate { "chrome":"54", "ie":"10", "node":"6.10" } + web.queue-microtask { "chrome":"54", "ie":"10", "node":"6.10" } + web.url { "chrome":"54", "ie":"10", "node":"6.10" } + web.url.to-json { "chrome":"54", "ie":"10", "node":"6.10" } + web.url-search-params { "chrome":"54", "ie":"10", "node":"6.10" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/input.mjs new file mode 100644 index 0000000000..807283757d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/web'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/options.json new file mode 100644 index 0000000000..6e8f4a357b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 71" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt new file mode 100644 index 0000000000..a4cdca528b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt @@ -0,0 +1,36 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"71" } + proposal-private-methods { "chrome":"71" } + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + web.immediate { "chrome":"71" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/input.mjs] Based on your targets, regenerator-runtime import excluded. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/input.mjs new file mode 100644 index 0000000000..807283757d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/web'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/options.json new file mode 100644 index 0000000000..a12f513bbd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "ie 6" + }, + "shippedProposals": true, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt new file mode 100644 index 0000000000..fdfa5f53d2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt @@ -0,0 +1,70 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs3: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + web.dom-collections.for-each { "ie":"6" } + web.dom-collections.iterator { "ie":"6" } + web.immediate { "ie":"6" } + web.queue-microtask { "ie":"6" } + web.timers { "ie":"6" } + web.url { "ie":"6" } + web.url.to-json { "ie":"6" } + web.url-search-params { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/input.mjs new file mode 100644 index 0000000000..34bd72ce1c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/input.mjs @@ -0,0 +1,2 @@ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/options.json new file mode 100644 index 0000000000..9dcd68d59c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome >= 54, ie 10", + "node": 6 + }, + "useBuiltIns": "entry", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/stdout.txt new file mode 100644 index 0000000000..cddac4c92f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/stdout.txt @@ -0,0 +1,251 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6" } + transform-exponentiation-operator { "ie":"10", "node":"6" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10", "node":"6" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10", "node":"6" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10", "node":"6" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3/input.mjs] +The corejs3 polyfill entry has been replaced with the following polyfills: + es.symbol { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.description { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.has-instance { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.is-concat-spreadable { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.iterator { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.match { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.replace { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.search { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.species { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.split { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.to-primitive { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.to-string-tag { "chrome":"54", "ie":"10", "node":"6" } + es.symbol.unscopables { "chrome":"54", "ie":"10", "node":"6" } + es.array.concat { "chrome":"54", "ie":"10", "node":"6" } + es.array.copy-within { "chrome":"54", "ie":"10", "node":"6" } + es.array.fill { "chrome":"54", "ie":"10", "node":"6" } + es.array.filter { "chrome":"54", "ie":"10", "node":"6" } + es.array.find { "chrome":"54", "ie":"10", "node":"6" } + es.array.find-index { "chrome":"54", "ie":"10", "node":"6" } + es.array.flat { "chrome":"54", "ie":"10", "node":"6" } + es.array.flat-map { "chrome":"54", "ie":"10", "node":"6" } + es.array.from { "chrome":"54", "ie":"10", "node":"6" } + es.array.includes { "chrome":"54", "ie":"10", "node":"6" } + es.array.index-of { "chrome":"54", "ie":"10", "node":"6" } + es.array.iterator { "chrome":"54", "ie":"10", "node":"6" } + es.array.join { "chrome":"54", "ie":"10", "node":"6" } + es.array.last-index-of { "chrome":"54", "ie":"10", "node":"6" } + es.array.map { "chrome":"54", "ie":"10", "node":"6" } + es.array.of { "chrome":"54", "ie":"10", "node":"6" } + es.array.reduce { "chrome":"54", "ie":"10", "node":"6" } + es.array.reduce-right { "chrome":"54", "ie":"10", "node":"6" } + es.array.slice { "chrome":"54", "ie":"10", "node":"6" } + es.array.sort { "chrome":"54", "ie":"10", "node":"6" } + es.array.species { "chrome":"54", "ie":"10", "node":"6" } + es.array.splice { "chrome":"54", "ie":"10", "node":"6" } + es.array.unscopables.flat { "chrome":"54", "ie":"10", "node":"6" } + es.array.unscopables.flat-map { "chrome":"54", "ie":"10", "node":"6" } + es.array-buffer.constructor { "chrome":"54", "ie":"10", "node":"6" } + es.array-buffer.is-view { "chrome":"54", "ie":"10", "node":"6" } + es.array-buffer.slice { "chrome":"54", "ie":"10", "node":"6" } + es.date.to-primitive { "chrome":"54", "ie":"10", "node":"6" } + es.function.has-instance { "chrome":"54", "ie":"10", "node":"6" } + es.function.name { "chrome":"54", "ie":"10", "node":"6" } + es.json.to-string-tag { "chrome":"54", "ie":"10", "node":"6" } + es.map { "chrome":"54", "ie":"10", "node":"6" } + es.math.acosh { "chrome":"54", "ie":"10", "node":"6" } + es.math.asinh { "chrome":"54", "ie":"10", "node":"6" } + es.math.atanh { "chrome":"54", "ie":"10", "node":"6" } + es.math.cbrt { "chrome":"54", "ie":"10", "node":"6" } + es.math.clz32 { "chrome":"54", "ie":"10", "node":"6" } + es.math.cosh { "chrome":"54", "ie":"10", "node":"6" } + es.math.expm1 { "chrome":"54", "ie":"10", "node":"6" } + es.math.fround { "chrome":"54", "ie":"10", "node":"6" } + es.math.hypot { "chrome":"54", "ie":"10", "node":"6" } + es.math.imul { "chrome":"54", "ie":"10", "node":"6" } + es.math.log10 { "chrome":"54", "ie":"10", "node":"6" } + es.math.log1p { "chrome":"54", "ie":"10", "node":"6" } + es.math.log2 { "chrome":"54", "ie":"10", "node":"6" } + es.math.sign { "chrome":"54", "ie":"10", "node":"6" } + es.math.sinh { "chrome":"54", "ie":"10", "node":"6" } + es.math.tanh { "chrome":"54", "ie":"10", "node":"6" } + es.math.to-string-tag { "chrome":"54", "ie":"10", "node":"6" } + es.math.trunc { "chrome":"54", "ie":"10", "node":"6" } + es.number.constructor { "chrome":"54", "ie":"10", "node":"6" } + es.number.epsilon { "chrome":"54", "ie":"10", "node":"6" } + es.number.is-finite { "chrome":"54", "ie":"10", "node":"6" } + es.number.is-integer { "chrome":"54", "ie":"10", "node":"6" } + es.number.is-nan { "chrome":"54", "ie":"10", "node":"6" } + es.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es.number.parse-float { "chrome":"54", "ie":"10", "node":"6" } + es.number.parse-int { "chrome":"54", "ie":"10", "node":"6" } + es.number.to-fixed { "chrome":"54", "ie":"10", "node":"6" } + es.object.assign { "chrome":"54", "ie":"10", "node":"6" } + es.object.define-getter { "chrome":"54", "ie":"10", "node":"6" } + es.object.define-setter { "chrome":"54", "ie":"10", "node":"6" } + es.object.entries { "chrome":"54", "ie":"10", "node":"6" } + es.object.freeze { "chrome":"54", "ie":"10", "node":"6" } + es.object.from-entries { "chrome":"54", "ie":"10", "node":"6" } + es.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6" } + es.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6" } + es.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6" } + es.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es.object.is { "chrome":"54", "ie":"10", "node":"6" } + es.object.is-extensible { "chrome":"54", "ie":"10", "node":"6" } + es.object.is-frozen { "chrome":"54", "ie":"10", "node":"6" } + es.object.is-sealed { "chrome":"54", "ie":"10", "node":"6" } + es.object.keys { "chrome":"54", "ie":"10", "node":"6" } + es.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6" } + es.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6" } + es.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6" } + es.object.seal { "chrome":"54", "ie":"10", "node":"6" } + es.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es.object.to-string { "chrome":"54", "ie":"10", "node":"6" } + es.object.values { "chrome":"54", "ie":"10", "node":"6" } + es.promise { "chrome":"54", "ie":"10", "node":"6" } + es.promise.finally { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.apply { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.construct { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.define-property { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.get { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.has { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.set { "chrome":"54", "ie":"10", "node":"6" } + es.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es.regexp.constructor { "chrome":"54", "ie":"10", "node":"6" } + es.regexp.exec { "chrome":"54", "ie":"10", "node":"6" } + es.regexp.flags { "chrome":"54", "ie":"10", "node":"6" } + es.regexp.to-string { "chrome":"54", "ie":"10", "node":"6" } + es.set { "chrome":"54", "ie":"10", "node":"6" } + es.string.code-point-at { "chrome":"54", "ie":"10", "node":"6" } + es.string.ends-with { "chrome":"54", "ie":"10", "node":"6" } + es.string.from-code-point { "chrome":"54", "ie":"10", "node":"6" } + es.string.includes { "chrome":"54", "ie":"10", "node":"6" } + es.string.iterator { "chrome":"54", "ie":"10", "node":"6" } + es.string.match { "chrome":"54", "ie":"10", "node":"6" } + es.string.pad-end { "chrome":"54", "ie":"10", "node":"6" } + es.string.pad-start { "chrome":"54", "ie":"10", "node":"6" } + es.string.raw { "chrome":"54", "ie":"10", "node":"6" } + es.string.repeat { "chrome":"54", "ie":"10", "node":"6" } + es.string.replace { "chrome":"54", "ie":"10", "node":"6" } + es.string.search { "chrome":"54", "ie":"10", "node":"6" } + es.string.split { "chrome":"54", "ie":"10", "node":"6" } + es.string.starts-with { "chrome":"54", "ie":"10", "node":"6" } + es.string.trim { "chrome":"54", "ie":"10", "node":"6" } + es.string.trim-end { "chrome":"54", "ie":"10", "node":"6" } + es.string.trim-start { "chrome":"54", "ie":"10", "node":"6" } + es.string.anchor { "chrome":"54", "ie":"10", "node":"6" } + es.string.big { "chrome":"54", "ie":"10", "node":"6" } + es.string.blink { "chrome":"54", "ie":"10", "node":"6" } + es.string.bold { "chrome":"54", "ie":"10", "node":"6" } + es.string.fixed { "chrome":"54", "ie":"10", "node":"6" } + es.string.fontcolor { "chrome":"54", "ie":"10", "node":"6" } + es.string.fontsize { "chrome":"54", "ie":"10", "node":"6" } + es.string.italics { "chrome":"54", "ie":"10", "node":"6" } + es.string.link { "chrome":"54", "ie":"10", "node":"6" } + es.string.small { "chrome":"54", "ie":"10", "node":"6" } + es.string.strike { "chrome":"54", "ie":"10", "node":"6" } + es.string.sub { "chrome":"54", "ie":"10", "node":"6" } + es.string.sup { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.float32-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.float64-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.int8-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.int16-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.int32-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.uint8-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.uint16-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.uint32-array { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.copy-within { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.every { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.fill { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.filter { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.find { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.find-index { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.for-each { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.from { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.includes { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.index-of { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.iterator { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.join { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.last-index-of { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.map { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.of { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.reduce { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.reduce-right { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.reverse { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.set { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.slice { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.some { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.sort { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.subarray { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.to-locale-string { "chrome":"54", "ie":"10", "node":"6" } + es.typed-array.to-string { "chrome":"54", "ie":"10", "node":"6" } + es.weak-map { "chrome":"54", "ie":"10", "node":"6" } + es.weak-set { "chrome":"54", "ie":"10", "node":"6" } + web.dom-collections.for-each { "chrome":"54", "ie":"10", "node":"6" } + web.dom-collections.iterator { "chrome":"54", "ie":"10", "node":"6" } + web.immediate { "chrome":"54", "ie":"10", "node":"6" } + web.queue-microtask { "chrome":"54", "ie":"10", "node":"6" } + web.url { "chrome":"54", "ie":"10", "node":"6" } + web.url.to-json { "chrome":"54", "ie":"10", "node":"6" } + web.url-search-params { "chrome":"54", "ie":"10", "node":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/input.js new file mode 100644 index 0000000000..e31333abc5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/input.js @@ -0,0 +1 @@ +function hasAnyoneSeenImportBabelPolyfill() { return false }; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/options.json new file mode 100644 index 0000000000..fd9dfe7fbe --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "node": 6 + }, + "useBuiltIns": "entry" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/stderr.txt new file mode 100644 index 0000000000..2bcc7b0c30 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/stdout.txt new file mode 100644 index 0000000000..b7bc73f69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/stdout.txt @@ -0,0 +1,39 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "node": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "node":"6" } + proposal-logical-assignment-operators { "node":"6" } + proposal-nullish-coalescing-operator { "node":"6" } + proposal-optional-chaining { "node":"6" } + proposal-json-strings { "node":"6" } + proposal-optional-catch-binding { "node":"6" } + proposal-async-generator-functions { "node":"6" } + proposal-object-rest-spread { "node":"6" } + transform-dotall-regex { "node":"6" } + proposal-unicode-property-regex { "node":"6" } + transform-named-capturing-groups-regex { "node":"6" } + transform-async-to-generator { "node":"6" } + transform-exponentiation-operator { "node":"6" } + transform-function-name { "node":"6" } + transform-for-of { "node":"6" } + transform-destructuring { "node":"6" } + proposal-export-namespace-from { "node":"6" } + transform-modules-commonjs { "node":"6" } + proposal-dynamic-import { "node":"6" } +corejs2: `DEBUG` option + +Using targets: { + "node": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-no-import/input.js] +The entry point for the corejs2 polyfill has not been found. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/options.json new file mode 100644 index 0000000000..641de2b835 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "ie 6" + }, + "shippedProposals": true, + "useBuiltIns": "entry" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stderr.txt new file mode 100644 index 0000000000..2bcc7b0c30 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt new file mode 100644 index 0000000000..ede4762071 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt @@ -0,0 +1,211 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "ie": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "ie":"6" } + proposal-private-methods { "ie":"6" } + proposal-numeric-separator { "ie":"6" } + proposal-logical-assignment-operators { "ie":"6" } + proposal-nullish-coalescing-operator { "ie":"6" } + proposal-optional-chaining { "ie":"6" } + proposal-json-strings { "ie":"6" } + proposal-optional-catch-binding { "ie":"6" } + transform-parameters { "ie":"6" } + proposal-async-generator-functions { "ie":"6" } + proposal-object-rest-spread { "ie":"6" } + transform-dotall-regex { "ie":"6" } + proposal-unicode-property-regex { "ie":"6" } + transform-named-capturing-groups-regex { "ie":"6" } + transform-async-to-generator { "ie":"6" } + transform-exponentiation-operator { "ie":"6" } + transform-template-literals { "ie":"6" } + transform-literals { "ie":"6" } + transform-function-name { "ie":"6" } + transform-arrow-functions { "ie":"6" } + transform-block-scoped-functions { "ie":"6" } + transform-classes { "ie":"6" } + transform-object-super { "ie":"6" } + transform-shorthand-properties { "ie":"6" } + transform-duplicate-keys { "ie":"6" } + transform-computed-properties { "ie":"6" } + transform-for-of { "ie":"6" } + transform-sticky-regex { "ie":"6" } + transform-unicode-escapes { "ie":"6" } + transform-unicode-regex { "ie":"6" } + transform-spread { "ie":"6" } + transform-destructuring { "ie":"6" } + transform-block-scoping { "ie":"6" } + transform-typeof-symbol { "ie":"6" } + transform-new-target { "ie":"6" } + transform-regenerator { "ie":"6" } + transform-member-expression-literals { "ie":"6" } + transform-property-literals { "ie":"6" } + transform-reserved-words { "ie":"6" } + proposal-export-namespace-from { "ie":"6" } + transform-modules-commonjs { "ie":"6" } + proposal-dynamic-import { "ie":"6" } +corejs2: `DEBUG` option + +Using targets: { + "ie": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "ie":"6" } + es6.array.every { "ie":"6" } + es6.array.fill { "ie":"6" } + es6.array.filter { "ie":"6" } + es6.array.find { "ie":"6" } + es6.array.find-index { "ie":"6" } + es7.array.flat-map { "ie":"6" } + es6.array.for-each { "ie":"6" } + es6.array.from { "ie":"6" } + es7.array.includes { "ie":"6" } + es6.array.index-of { "ie":"6" } + es6.array.is-array { "ie":"6" } + es6.array.iterator { "ie":"6" } + es6.array.last-index-of { "ie":"6" } + es6.array.map { "ie":"6" } + es6.array.of { "ie":"6" } + es6.array.reduce { "ie":"6" } + es6.array.reduce-right { "ie":"6" } + es6.array.slice { "ie":"6" } + es6.array.some { "ie":"6" } + es6.array.sort { "ie":"6" } + es6.array.species { "ie":"6" } + es6.date.now { "ie":"6" } + es6.date.to-iso-string { "ie":"6" } + es6.date.to-json { "ie":"6" } + es6.date.to-primitive { "ie":"6" } + es6.date.to-string { "ie":"6" } + es6.function.bind { "ie":"6" } + es6.function.has-instance { "ie":"6" } + es6.function.name { "ie":"6" } + es6.map { "ie":"6" } + es6.math.acosh { "ie":"6" } + es6.math.asinh { "ie":"6" } + es6.math.atanh { "ie":"6" } + es6.math.cbrt { "ie":"6" } + es6.math.clz32 { "ie":"6" } + es6.math.cosh { "ie":"6" } + es6.math.expm1 { "ie":"6" } + es6.math.fround { "ie":"6" } + es6.math.hypot { "ie":"6" } + es6.math.imul { "ie":"6" } + es6.math.log1p { "ie":"6" } + es6.math.log10 { "ie":"6" } + es6.math.log2 { "ie":"6" } + es6.math.sign { "ie":"6" } + es6.math.sinh { "ie":"6" } + es6.math.tanh { "ie":"6" } + es6.math.trunc { "ie":"6" } + es6.number.constructor { "ie":"6" } + es6.number.epsilon { "ie":"6" } + es6.number.is-finite { "ie":"6" } + es6.number.is-integer { "ie":"6" } + es6.number.is-nan { "ie":"6" } + es6.number.is-safe-integer { "ie":"6" } + es6.number.max-safe-integer { "ie":"6" } + es6.number.min-safe-integer { "ie":"6" } + es6.number.parse-float { "ie":"6" } + es6.number.parse-int { "ie":"6" } + es6.object.assign { "ie":"6" } + es6.object.create { "ie":"6" } + es7.object.define-getter { "ie":"6" } + es7.object.define-setter { "ie":"6" } + es6.object.define-property { "ie":"6" } + es6.object.define-properties { "ie":"6" } + es7.object.entries { "ie":"6" } + es6.object.freeze { "ie":"6" } + es6.object.get-own-property-descriptor { "ie":"6" } + es7.object.get-own-property-descriptors { "ie":"6" } + es6.object.get-own-property-names { "ie":"6" } + es6.object.get-prototype-of { "ie":"6" } + es7.object.lookup-getter { "ie":"6" } + es7.object.lookup-setter { "ie":"6" } + es6.object.prevent-extensions { "ie":"6" } + es6.object.to-string { "ie":"6" } + es6.object.is { "ie":"6" } + es6.object.is-frozen { "ie":"6" } + es6.object.is-sealed { "ie":"6" } + es6.object.is-extensible { "ie":"6" } + es6.object.keys { "ie":"6" } + es6.object.seal { "ie":"6" } + es6.object.set-prototype-of { "ie":"6" } + es7.object.values { "ie":"6" } + es6.promise { "ie":"6" } + es7.promise.finally { "ie":"6" } + es6.reflect.apply { "ie":"6" } + es6.reflect.construct { "ie":"6" } + es6.reflect.define-property { "ie":"6" } + es6.reflect.delete-property { "ie":"6" } + es6.reflect.get { "ie":"6" } + es6.reflect.get-own-property-descriptor { "ie":"6" } + es6.reflect.get-prototype-of { "ie":"6" } + es6.reflect.has { "ie":"6" } + es6.reflect.is-extensible { "ie":"6" } + es6.reflect.own-keys { "ie":"6" } + es6.reflect.prevent-extensions { "ie":"6" } + es6.reflect.set { "ie":"6" } + es6.reflect.set-prototype-of { "ie":"6" } + es6.regexp.constructor { "ie":"6" } + es6.regexp.flags { "ie":"6" } + es6.regexp.match { "ie":"6" } + es6.regexp.replace { "ie":"6" } + es6.regexp.split { "ie":"6" } + es6.regexp.search { "ie":"6" } + es6.regexp.to-string { "ie":"6" } + es6.set { "ie":"6" } + es6.symbol { "ie":"6" } + es7.symbol.async-iterator { "ie":"6" } + es6.string.anchor { "ie":"6" } + es6.string.big { "ie":"6" } + es6.string.blink { "ie":"6" } + es6.string.bold { "ie":"6" } + es6.string.code-point-at { "ie":"6" } + es6.string.ends-with { "ie":"6" } + es6.string.fixed { "ie":"6" } + es6.string.fontcolor { "ie":"6" } + es6.string.fontsize { "ie":"6" } + es6.string.from-code-point { "ie":"6" } + es6.string.includes { "ie":"6" } + es6.string.italics { "ie":"6" } + es6.string.iterator { "ie":"6" } + es6.string.link { "ie":"6" } + es7.string.pad-start { "ie":"6" } + es7.string.pad-end { "ie":"6" } + es6.string.raw { "ie":"6" } + es6.string.repeat { "ie":"6" } + es6.string.small { "ie":"6" } + es6.string.starts-with { "ie":"6" } + es6.string.strike { "ie":"6" } + es6.string.sub { "ie":"6" } + es6.string.sup { "ie":"6" } + es6.string.trim { "ie":"6" } + es7.string.trim-left { "ie":"6" } + es7.string.trim-right { "ie":"6" } + es6.typed.array-buffer { "ie":"6" } + es6.typed.data-view { "ie":"6" } + es6.typed.int8-array { "ie":"6" } + es6.typed.uint8-array { "ie":"6" } + es6.typed.uint8-clamped-array { "ie":"6" } + es6.typed.int16-array { "ie":"6" } + es6.typed.uint16-array { "ie":"6" } + es6.typed.int32-array { "ie":"6" } + es6.typed.uint32-array { "ie":"6" } + es6.typed.float32-array { "ie":"6" } + es6.typed.float64-array { "ie":"6" } + es6.weak-map { "ie":"6" } + es6.weak-set { "ie":"6" } + web.timers { "ie":"6" } + web.immediate { "ie":"6" } + web.dom.iterable { "ie":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/options.json new file mode 100644 index 0000000000..c592957c8a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/options.json @@ -0,0 +1,19 @@ +{ + "BABEL_8_BREAKING": false, + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 55, + "uglify": true + }, + "useBuiltIns": "entry", + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/stderr.txt new file mode 100644 index 0000000000..81ab203f36 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/stderr.txt @@ -0,0 +1,12 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs + +The uglify target has been deprecated. Set the top level +option `forceAllTransforms: true` instead. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/stdout.txt new file mode 100644 index 0000000000..8c94eddf93 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/stdout.txt @@ -0,0 +1,76 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "55" +} + +Using modules transform: false + +Using plugins: + proposal-numeric-separator { "chrome":"55" } + proposal-logical-assignment-operators { "chrome":"55" } + proposal-nullish-coalescing-operator { "chrome":"55" } + proposal-optional-chaining { "chrome":"55" } + proposal-json-strings { "chrome":"55" } + proposal-optional-catch-binding { "chrome":"55" } + transform-parameters {} + proposal-async-generator-functions { "chrome":"55" } + proposal-object-rest-spread { "chrome":"55" } + transform-dotall-regex { "chrome":"55" } + proposal-unicode-property-regex { "chrome":"55" } + transform-named-capturing-groups-regex { "chrome":"55" } + transform-async-to-generator {} + transform-exponentiation-operator {} + transform-template-literals {} + transform-literals {} + transform-function-name {} + transform-arrow-functions {} + transform-block-scoped-functions {} + transform-classes {} + transform-object-super {} + transform-shorthand-properties {} + transform-duplicate-keys {} + transform-computed-properties {} + transform-for-of {} + transform-sticky-regex {} + transform-unicode-escapes {} + transform-unicode-regex {} + transform-spread {} + transform-destructuring {} + transform-block-scoping {} + transform-typeof-symbol {} + transform-new-target {} + transform-regenerator {} + transform-member-expression-literals {} + transform-property-literals {} + transform-reserved-words {} + proposal-export-namespace-from { "chrome":"55" } + syntax-dynamic-import { "chrome":"55" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "55" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-uglify/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es7.array.flat-map { "chrome":"55" } + es6.array.iterator { "chrome":"55" } + es6.array.sort { "chrome":"55" } + es7.object.define-getter { "chrome":"55" } + es7.object.define-setter { "chrome":"55" } + es7.object.lookup-getter { "chrome":"55" } + es7.object.lookup-setter { "chrome":"55" } + es6.object.to-string { "chrome":"55" } + es7.promise.finally { "chrome":"55" } + es7.symbol.async-iterator { "chrome":"55" } + es7.string.pad-start { "chrome":"55" } + es7.string.pad-end { "chrome":"55" } + es7.string.trim-left { "chrome":"55" } + es7.string.trim-right { "chrome":"55" } + web.timers { "chrome":"55" } + web.immediate { "chrome":"55" } + web.dom.iterable { "chrome":"55" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/options.json new file mode 100644 index 0000000000..850e0357fd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome >= 54, ie 10", + "node": 6 + }, + "useBuiltIns": "entry" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/stderr.txt new file mode 100644 index 0000000000..2bcc7b0c30 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/stdout.txt new file mode 100644 index 0000000000..5b6511da2a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/stdout.txt @@ -0,0 +1,192 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "54", + "ie": "10", + "node": "6" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"54", "ie":"10", "node":"6" } + proposal-logical-assignment-operators { "chrome":"54", "ie":"10", "node":"6" } + proposal-nullish-coalescing-operator { "chrome":"54", "ie":"10", "node":"6" } + proposal-optional-chaining { "chrome":"54", "ie":"10", "node":"6" } + proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" } + proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" } + transform-parameters { "ie":"10" } + proposal-async-generator-functions { "chrome":"54", "ie":"10", "node":"6" } + proposal-object-rest-spread { "chrome":"54", "ie":"10", "node":"6" } + transform-dotall-regex { "chrome":"54", "ie":"10", "node":"6" } + proposal-unicode-property-regex { "chrome":"54", "ie":"10", "node":"6" } + transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" } + transform-async-to-generator { "chrome":"54", "ie":"10", "node":"6" } + transform-exponentiation-operator { "ie":"10", "node":"6" } + transform-template-literals { "ie":"10" } + transform-literals { "ie":"10" } + transform-function-name { "ie":"10", "node":"6" } + transform-arrow-functions { "ie":"10" } + transform-block-scoped-functions { "ie":"10" } + transform-classes { "ie":"10" } + transform-object-super { "ie":"10" } + transform-shorthand-properties { "ie":"10" } + transform-duplicate-keys { "ie":"10" } + transform-computed-properties { "ie":"10" } + transform-for-of { "ie":"10", "node":"6" } + transform-sticky-regex { "ie":"10" } + transform-unicode-escapes { "ie":"10" } + transform-unicode-regex { "ie":"10" } + transform-spread { "ie":"10" } + transform-destructuring { "ie":"10", "node":"6" } + transform-block-scoping { "ie":"10" } + transform-typeof-symbol { "ie":"10" } + transform-new-target { "ie":"10" } + transform-regenerator { "ie":"10" } + proposal-export-namespace-from { "chrome":"54", "ie":"10", "node":"6" } + transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6" } + proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "54", + "ie": "10", + "node": "6" +} + +Using polyfills with `entry-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs/input.mjs] +The corejs2 polyfill entry has been replaced with the following polyfills: + es6.array.copy-within { "chrome":"54", "ie":"10", "node":"6" } + es6.array.fill { "chrome":"54", "ie":"10", "node":"6" } + es6.array.filter { "chrome":"54", "ie":"10", "node":"6" } + es6.array.find { "chrome":"54", "ie":"10", "node":"6" } + es6.array.find-index { "chrome":"54", "ie":"10", "node":"6" } + es7.array.flat-map { "chrome":"54", "ie":"10", "node":"6" } + es6.array.from { "chrome":"54", "ie":"10", "node":"6" } + es7.array.includes { "chrome":"54", "ie":"10", "node":"6" } + es6.array.iterator { "chrome":"54", "ie":"10", "node":"6" } + es6.array.map { "chrome":"54", "ie":"10", "node":"6" } + es6.array.of { "chrome":"54", "ie":"10", "node":"6" } + es6.array.slice { "chrome":"54", "ie":"10", "node":"6" } + es6.array.sort { "chrome":"54", "ie":"10", "node":"6" } + es6.array.species { "chrome":"54", "ie":"10", "node":"6" } + es6.date.to-primitive { "chrome":"54", "ie":"10", "node":"6" } + es6.function.has-instance { "chrome":"54", "ie":"10", "node":"6" } + es6.function.name { "chrome":"54", "ie":"10", "node":"6" } + es6.map { "chrome":"54", "ie":"10", "node":"6" } + es6.math.acosh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.asinh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.atanh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.cbrt { "chrome":"54", "ie":"10", "node":"6" } + es6.math.clz32 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.cosh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.expm1 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.fround { "chrome":"54", "ie":"10", "node":"6" } + es6.math.hypot { "chrome":"54", "ie":"10", "node":"6" } + es6.math.imul { "chrome":"54", "ie":"10", "node":"6" } + es6.math.log1p { "chrome":"54", "ie":"10", "node":"6" } + es6.math.log10 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.log2 { "chrome":"54", "ie":"10", "node":"6" } + es6.math.sign { "chrome":"54", "ie":"10", "node":"6" } + es6.math.sinh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.tanh { "chrome":"54", "ie":"10", "node":"6" } + es6.math.trunc { "chrome":"54", "ie":"10", "node":"6" } + es6.number.constructor { "chrome":"54", "ie":"10", "node":"6" } + es6.number.epsilon { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-finite { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-nan { "chrome":"54", "ie":"10", "node":"6" } + es6.number.is-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.max-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.min-safe-integer { "chrome":"54", "ie":"10", "node":"6" } + es6.number.parse-float { "chrome":"54", "ie":"10", "node":"6" } + es6.number.parse-int { "chrome":"54", "ie":"10", "node":"6" } + es6.object.assign { "chrome":"54", "ie":"10", "node":"6" } + es7.object.define-getter { "chrome":"54", "ie":"10", "node":"6" } + es7.object.define-setter { "chrome":"54", "ie":"10", "node":"6" } + es7.object.entries { "chrome":"54", "ie":"10", "node":"6" } + es6.object.freeze { "chrome":"54", "ie":"10", "node":"6" } + es6.object.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6" } + es7.object.get-own-property-descriptors { "chrome":"54", "ie":"10", "node":"6" } + es6.object.get-own-property-names { "chrome":"54", "ie":"10", "node":"6" } + es6.object.get-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es7.object.lookup-getter { "chrome":"54", "ie":"10", "node":"6" } + es7.object.lookup-setter { "chrome":"54", "ie":"10", "node":"6" } + es6.object.prevent-extensions { "chrome":"54", "ie":"10", "node":"6" } + es6.object.to-string { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is-frozen { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is-sealed { "chrome":"54", "ie":"10", "node":"6" } + es6.object.is-extensible { "chrome":"54", "ie":"10", "node":"6" } + es6.object.keys { "chrome":"54", "ie":"10", "node":"6" } + es6.object.seal { "chrome":"54", "ie":"10", "node":"6" } + es6.object.set-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es7.object.values { "chrome":"54", "ie":"10", "node":"6" } + es6.promise { "chrome":"54", "ie":"10", "node":"6" } + es7.promise.finally { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.apply { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.construct { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.define-property { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.delete-property { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.get { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.get-own-property-descriptor { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.get-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.has { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.is-extensible { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.own-keys { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.prevent-extensions { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.set { "chrome":"54", "ie":"10", "node":"6" } + es6.reflect.set-prototype-of { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.constructor { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.flags { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.match { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.replace { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.split { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.search { "chrome":"54", "ie":"10", "node":"6" } + es6.regexp.to-string { "chrome":"54", "ie":"10", "node":"6" } + es6.set { "chrome":"54", "ie":"10", "node":"6" } + es6.symbol { "chrome":"54", "ie":"10", "node":"6" } + es7.symbol.async-iterator { "chrome":"54", "ie":"10", "node":"6" } + es6.string.anchor { "chrome":"54", "ie":"10", "node":"6" } + es6.string.big { "chrome":"54", "ie":"10", "node":"6" } + es6.string.blink { "chrome":"54", "ie":"10", "node":"6" } + es6.string.bold { "chrome":"54", "ie":"10", "node":"6" } + es6.string.code-point-at { "chrome":"54", "ie":"10", "node":"6" } + es6.string.ends-with { "chrome":"54", "ie":"10", "node":"6" } + es6.string.fixed { "chrome":"54", "ie":"10", "node":"6" } + es6.string.fontcolor { "chrome":"54", "ie":"10", "node":"6" } + es6.string.fontsize { "chrome":"54", "ie":"10", "node":"6" } + es6.string.from-code-point { "chrome":"54", "ie":"10", "node":"6" } + es6.string.includes { "chrome":"54", "ie":"10", "node":"6" } + es6.string.italics { "chrome":"54", "ie":"10", "node":"6" } + es6.string.iterator { "chrome":"54", "ie":"10", "node":"6" } + es6.string.link { "chrome":"54", "ie":"10", "node":"6" } + es7.string.pad-start { "chrome":"54", "ie":"10", "node":"6" } + es7.string.pad-end { "chrome":"54", "ie":"10", "node":"6" } + es6.string.raw { "chrome":"54", "ie":"10", "node":"6" } + es6.string.repeat { "chrome":"54", "ie":"10", "node":"6" } + es6.string.small { "chrome":"54", "ie":"10", "node":"6" } + es6.string.starts-with { "chrome":"54", "ie":"10", "node":"6" } + es6.string.strike { "chrome":"54", "ie":"10", "node":"6" } + es6.string.sub { "chrome":"54", "ie":"10", "node":"6" } + es6.string.sup { "chrome":"54", "ie":"10", "node":"6" } + es7.string.trim-left { "chrome":"54", "ie":"10", "node":"6" } + es7.string.trim-right { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.array-buffer { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.int8-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint8-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint8-clamped-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.int16-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint16-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.int32-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.uint32-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.float32-array { "chrome":"54", "ie":"10", "node":"6" } + es6.typed.float64-array { "chrome":"54", "ie":"10", "node":"6" } + es6.weak-map { "chrome":"54", "ie":"10", "node":"6" } + es6.weak-set { "chrome":"54", "ie":"10", "node":"6" } + web.timers { "chrome":"54", "ie":"10", "node":"6" } + web.immediate { "chrome":"54", "ie":"10", "node":"6" } + web.dom.iterable { "chrome":"54", "ie":"10", "node":"6" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/options.json new file mode 100644 index 0000000000..29a3f0e841 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/options.json @@ -0,0 +1,3 @@ +{ + "BABEL_8_BREAKING": false +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/options.json new file mode 100644 index 0000000000..fb4eeeaf5e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/options.json @@ -0,0 +1,22 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "exclude": [ + "transform-async-to-generator", + "transform-regenerator", + "transform-parameters" + ], + "targets": { + "firefox": 52, + "node": 7.4 + }, + "useBuiltIns": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/stderr.txt new file mode 100644 index 0000000000..e6a9d0e203 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/stderr.txt @@ -0,0 +1,6 @@ +Warning, the following targets are using a decimal version: + + node: 7.4 + +We recommend using a string for minor/patch versions to avoid numbers like 6.10 +getting parsed as 6.1, which can lead to unexpected behavior. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/stdout.txt new file mode 100644 index 0000000000..b9ee4fb479 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/plugins-only/stdout.txt @@ -0,0 +1,32 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "firefox": "52", + "node": "7.4" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "firefox":"52", "node":"7.4" } + proposal-logical-assignment-operators { "firefox":"52", "node":"7.4" } + proposal-nullish-coalescing-operator { "firefox":"52", "node":"7.4" } + proposal-optional-chaining { "firefox":"52", "node":"7.4" } + proposal-json-strings { "firefox":"52", "node":"7.4" } + proposal-optional-catch-binding { "firefox":"52", "node":"7.4" } + proposal-async-generator-functions { "firefox":"52", "node":"7.4" } + proposal-object-rest-spread { "firefox":"52", "node":"7.4" } + transform-dotall-regex { "firefox":"52", "node":"7.4" } + proposal-unicode-property-regex { "firefox":"52", "node":"7.4" } + transform-named-capturing-groups-regex { "firefox":"52", "node":"7.4" } + transform-literals { "firefox":"52" } + transform-function-name { "firefox":"52" } + transform-for-of { "firefox":"52" } + transform-unicode-escapes { "firefox":"52" } + transform-destructuring { "firefox":"52" } + proposal-export-namespace-from { "firefox":"52", "node":"7.4" } + transform-modules-commonjs { "firefox":"52", "node":"7.4" } + proposal-dynamic-import { "firefox":"52", "node":"7.4" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/options.json new file mode 100644 index 0000000000..ca0d01f027 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 80" + }, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt new file mode 100644 index 0000000000..de118c5fba --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt @@ -0,0 +1,25 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "80" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"80" } + proposal-private-methods { "chrome":"80" } + syntax-numeric-separator { "chrome":"80" } + proposal-logical-assignment-operators { "chrome":"80" } + syntax-nullish-coalescing-operator { "chrome":"80" } + syntax-optional-chaining { "chrome":"80" } + syntax-json-strings { "chrome":"80" } + syntax-optional-catch-binding { "chrome":"80" } + syntax-async-generators { "chrome":"80" } + syntax-object-rest-spread { "chrome":"80" } + transform-modules-commonjs { "chrome":"80" } + proposal-dynamic-import { "chrome":"80" } + proposal-export-namespace-from {} + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/options.json new file mode 100644 index 0000000000..d584a8e05d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/options.json @@ -0,0 +1,16 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "browsers": "chrome 84" + }, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt new file mode 100644 index 0000000000..32f5d74967 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt @@ -0,0 +1,24 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "84" +} + +Using modules transform: auto + +Using plugins: + syntax-class-properties { "chrome":"84" } + syntax-numeric-separator { "chrome":"84" } + proposal-logical-assignment-operators { "chrome":"84" } + syntax-nullish-coalescing-operator { "chrome":"84" } + syntax-optional-chaining { "chrome":"84" } + syntax-json-strings { "chrome":"84" } + syntax-optional-catch-binding { "chrome":"84" } + syntax-async-generators { "chrome":"84" } + syntax-object-rest-spread { "chrome":"84" } + transform-modules-commonjs { "chrome":"84" } + proposal-dynamic-import { "chrome":"84" } + proposal-export-namespace-from {} + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/input.mjs new file mode 100644 index 0000000000..fbb8052d71 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/input.mjs @@ -0,0 +1 @@ +foo?.bar; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/options.json new file mode 100644 index 0000000000..bd767ffbae --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/options.json @@ -0,0 +1,8 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "targets": "chrome 80", + "presets": [ + ["env", { "debug": true, "targets": "chrome 60" }] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/stdout.txt new file mode 100644 index 0000000000..2548b104e6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets-shadowed/stdout.txt @@ -0,0 +1,26 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "60" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"60" } + proposal-logical-assignment-operators { "chrome":"60" } + proposal-nullish-coalescing-operator { "chrome":"60" } + proposal-optional-chaining { "chrome":"60" } + proposal-json-strings { "chrome":"60" } + proposal-optional-catch-binding { "chrome":"60" } + proposal-async-generator-functions { "chrome":"60" } + syntax-object-rest-spread { "chrome":"60" } + transform-dotall-regex { "chrome":"60" } + proposal-unicode-property-regex { "chrome":"60" } + transform-named-capturing-groups-regex { "chrome":"60" } + proposal-export-namespace-from { "chrome":"60" } + transform-modules-commonjs { "chrome":"60" } + proposal-dynamic-import { "chrome":"60" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/input.mjs new file mode 100644 index 0000000000..fbb8052d71 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/input.mjs @@ -0,0 +1 @@ +foo?.bar; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/options.json new file mode 100644 index 0000000000..dbc78d3278 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/options.json @@ -0,0 +1,8 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "targets": "chrome 80", + "presets": [ + ["env", { "debug": true }] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/stdout.txt new file mode 100644 index 0000000000..762aee9a19 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/top-level-targets/stdout.txt @@ -0,0 +1,23 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "80" +} + +Using modules transform: auto + +Using plugins: + syntax-numeric-separator { "chrome":"80" } + proposal-logical-assignment-operators { "chrome":"80" } + syntax-nullish-coalescing-operator { "chrome":"80" } + syntax-optional-chaining { "chrome":"80" } + syntax-json-strings { "chrome":"80" } + syntax-optional-catch-binding { "chrome":"80" } + syntax-async-generators { "chrome":"80" } + syntax-object-rest-spread { "chrome":"80" } + transform-modules-commonjs { "chrome":"80" } + proposal-dynamic-import { "chrome":"80" } + proposal-export-namespace-from {} + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/options.json new file mode 100644 index 0000000000..bc84c3a017 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/stdout.txt new file mode 100644 index 0000000000..8a3936d7d0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/stdout.txt @@ -0,0 +1,74 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/input.js] +The corejs2 polyfill added the following polyfills: + es6.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es6.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es6.map { "chrome":"52", "firefox":"50", "ie":"11" } + es6.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es6.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/options.json new file mode 100644 index 0000000000..bc84c3a017 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/stdout.txt new file mode 100644 index 0000000000..fff7fac6d3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/stdout.txt @@ -0,0 +1,70 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/options.json new file mode 100644 index 0000000000..d028d3be91 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/stdout.txt new file mode 100644 index 0000000000..276d718b6c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/stdout.txt @@ -0,0 +1,32 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-1/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/options.json new file mode 100644 index 0000000000..d028d3be91 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/stdout.txt new file mode 100644 index 0000000000..d98787488c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/stdout.txt @@ -0,0 +1,32 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-chrome-71-2/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/input.js new file mode 100644 index 0000000000..4ec1fa479e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/input.js @@ -0,0 +1 @@ +var foo = "bar"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/options.json new file mode 100644 index 0000000000..bc84c3a017 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/stdout.txt new file mode 100644 index 0000000000..6c95408598 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/stdout.txt @@ -0,0 +1,68 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/input.js] +Based on your code and targets, the corejs2 polyfill did not add any polyfill. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/input.js new file mode 100644 index 0000000000..3fbea9d211 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/input.js @@ -0,0 +1,5 @@ +var x = 0; + +for (var i = 0; i < 5; i++) { + x += i; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/options.json new file mode 100644 index 0000000000..bc84c3a017 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/stdout.txt new file mode 100644 index 0000000000..acb7607c89 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/stdout.txt @@ -0,0 +1,68 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/input.js] +Based on your code and targets, the corejs2 polyfill did not add any polyfill. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-none-2/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/options.json new file mode 100644 index 0000000000..17e594c8c6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": { "version": 2, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/stdout.txt new file mode 100644 index 0000000000..0fa0260424 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/stdout.txt @@ -0,0 +1,74 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/input.js] +The corejs2 polyfill added the following polyfills: + es6.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es6.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es6.map { "chrome":"52", "firefox":"50", "ie":"11" } + es6.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es6.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/options.json new file mode 100644 index 0000000000..17e594c8c6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": { "version": 2, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/stdout.txt new file mode 100644 index 0000000000..afa36589c4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/stdout.txt @@ -0,0 +1,70 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/options.json new file mode 100644 index 0000000000..7239e57214 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": { "version": 2, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/stdout.txt new file mode 100644 index 0000000000..609c067528 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/stdout.txt @@ -0,0 +1,32 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-1/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/options.json new file mode 100644 index 0000000000..7239e57214 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": { "version": 2, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/stdout.txt new file mode 100644 index 0000000000..b0364bd6ae --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/stdout.txt @@ -0,0 +1,32 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-proposals-chrome-71-2/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/options.json new file mode 100644 index 0000000000..9069c3b788 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/options.json @@ -0,0 +1,20 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "shippedProposals": true, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt new file mode 100644 index 0000000000..e2eeb57dfa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt @@ -0,0 +1,76 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-private-methods { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/input.js] +The corejs2 polyfill added the following polyfills: + es6.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es6.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es6.map { "chrome":"52", "firefox":"50", "ie":"11" } + es6.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es6.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/options.json new file mode 100644 index 0000000000..9069c3b788 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/options.json @@ -0,0 +1,20 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "shippedProposals": true, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt new file mode 100644 index 0000000000..d92b489ec5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt @@ -0,0 +1,72 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-private-methods { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/options.json new file mode 100644 index 0000000000..c1118296ce --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 55 + }, + "useBuiltIns": "usage", + "corejs": 2 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/stderr.txt new file mode 100644 index 0000000000..8bfe6af5c5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/stderr.txt @@ -0,0 +1,2 @@ +When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed. + Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/stdout.txt new file mode 100644 index 0000000000..df3f12bde4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/stdout.txt @@ -0,0 +1,34 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "55" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"55" } + proposal-logical-assignment-operators { "chrome":"55" } + proposal-nullish-coalescing-operator { "chrome":"55" } + proposal-optional-chaining { "chrome":"55" } + proposal-json-strings { "chrome":"55" } + proposal-optional-catch-binding { "chrome":"55" } + proposal-async-generator-functions { "chrome":"55" } + proposal-object-rest-spread { "chrome":"55" } + transform-dotall-regex { "chrome":"55" } + proposal-unicode-property-regex { "chrome":"55" } + transform-named-capturing-groups-regex { "chrome":"55" } + proposal-export-namespace-from { "chrome":"55" } + transform-modules-commonjs { "chrome":"55" } + proposal-dynamic-import { "chrome":"55" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "55" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-with-import/input.mjs] +Based on your code and targets, the corejs2 polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/options.json new file mode 100644 index 0000000000..64cd6071b9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/stdout.txt new file mode 100644 index 0000000000..3a2041d0cf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/stdout.txt @@ -0,0 +1,75 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/input.js] +The corejs3 polyfill added the following polyfills: + es.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es.map { "chrome":"52", "firefox":"50", "ie":"11" } + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.queue-microtask { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/options.json new file mode 100644 index 0000000000..64cd6071b9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/stdout.txt new file mode 100644 index 0000000000..dd0e2af01e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/stdout.txt @@ -0,0 +1,72 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/input.js] +The corejs3 polyfill added the following polyfills: + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/options.json new file mode 100644 index 0000000000..affda23d0a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/stdout.txt new file mode 100644 index 0000000000..6f7536c962 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/stdout.txt @@ -0,0 +1,31 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-1/input.js] +Based on your code and targets, the corejs3 polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/options.json new file mode 100644 index 0000000000..affda23d0a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/stdout.txt new file mode 100644 index 0000000000..a8335851c7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/stdout.txt @@ -0,0 +1,31 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-chrome-71-2/input.js] +Based on your code and targets, the corejs3 polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/input.js new file mode 100644 index 0000000000..4ec1fa479e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/input.js @@ -0,0 +1 @@ +var foo = "bar"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/options.json new file mode 100644 index 0000000000..64cd6071b9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/stdout.txt new file mode 100644 index 0000000000..8eba55c596 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/stdout.txt @@ -0,0 +1,68 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/input.js] +Based on your code and targets, the corejs3 polyfill did not add any polyfill. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/input.js new file mode 100644 index 0000000000..3fbea9d211 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/input.js @@ -0,0 +1,5 @@ +var x = 0; + +for (var i = 0; i < 5; i++) { + x += i; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/options.json new file mode 100644 index 0000000000..64cd6071b9 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/stdout.txt new file mode 100644 index 0000000000..a70b9a5b21 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/stdout.txt @@ -0,0 +1,68 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/input.js] +Based on your code and targets, the corejs3 polyfill did not add any polyfill. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-none-2/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/options.json new file mode 100644 index 0000000000..06974bf0dc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": { "version": 3, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/stdout.txt new file mode 100644 index 0000000000..0db00a1ec4 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/stdout.txt @@ -0,0 +1,91 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/input.js] +The corejs3 polyfill added the following polyfills: + es.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es.map { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.delete-all { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.every { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.filter { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.find { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.find-key { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.includes { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.key-of { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.map-keys { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.map-values { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.merge { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.reduce { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.some { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.map.update { "chrome":"52", "firefox":"50", "ie":"11" } + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.queue-microtask { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.global-this { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.observable { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.symbol.observable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/options.json new file mode 100644 index 0000000000..06974bf0dc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": { "version": 3, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/stdout.txt new file mode 100644 index 0000000000..05d6511543 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/stdout.txt @@ -0,0 +1,72 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/input.js] +The corejs3 polyfill added the following polyfills: + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/options.json new file mode 100644 index 0000000000..18332716ec --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": { "version": 3, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/stdout.txt new file mode 100644 index 0000000000..becc83a959 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/stdout.txt @@ -0,0 +1,46 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-1/input.js] +The corejs3 polyfill added the following polyfills: + esnext.map.delete-all { "chrome":"71" } + esnext.map.every { "chrome":"71" } + esnext.map.filter { "chrome":"71" } + esnext.map.find { "chrome":"71" } + esnext.map.find-key { "chrome":"71" } + esnext.map.includes { "chrome":"71" } + esnext.map.key-of { "chrome":"71" } + esnext.map.map-keys { "chrome":"71" } + esnext.map.map-values { "chrome":"71" } + esnext.map.merge { "chrome":"71" } + esnext.map.reduce { "chrome":"71" } + esnext.map.some { "chrome":"71" } + esnext.map.update { "chrome":"71" } + esnext.observable { "chrome":"71" } + esnext.symbol.observable { "chrome":"71" } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/options.json new file mode 100644 index 0000000000..18332716ec --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 71 + }, + "useBuiltIns": "usage", + "corejs": { "version": 3, "proposals": true } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/stdout.txt new file mode 100644 index 0000000000..90523541cb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/stdout.txt @@ -0,0 +1,31 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "71" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"71" } + proposal-logical-assignment-operators { "chrome":"71" } + proposal-nullish-coalescing-operator { "chrome":"71" } + proposal-optional-chaining { "chrome":"71" } + syntax-json-strings { "chrome":"71" } + syntax-optional-catch-binding { "chrome":"71" } + syntax-async-generators { "chrome":"71" } + syntax-object-rest-spread { "chrome":"71" } + proposal-export-namespace-from { "chrome":"71" } + transform-modules-commonjs { "chrome":"71" } + proposal-dynamic-import { "chrome":"71" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "71" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-proposals-chrome-71-2/input.js] +Based on your code and targets, the corejs3 polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/options.json new file mode 100644 index 0000000000..5bd93bb471 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/options.json @@ -0,0 +1,20 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "shippedProposals": true, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt new file mode 100644 index 0000000000..92145093fc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt @@ -0,0 +1,78 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-private-methods { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/input.js] +The corejs3 polyfill added the following polyfills: + es.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es.map { "chrome":"52", "firefox":"50", "ie":"11" } + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.queue-microtask { "chrome":"52", "firefox":"50", "ie":"11" } + esnext.global-this { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/options.json new file mode 100644 index 0000000000..5bd93bb471 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/options.json @@ -0,0 +1,20 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "shippedProposals": true, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt new file mode 100644 index 0000000000..7bd5cf576c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt @@ -0,0 +1,74 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-class-properties { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-private-methods { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/input.js] +The corejs3 polyfill added the following polyfills: + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/options.json new file mode 100644 index 0000000000..14e2af08bf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": "3.0" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt new file mode 100644 index 0000000000..c2dece791e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt @@ -0,0 +1,75 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/input.js] +The corejs3 polyfill added the following polyfills: + es.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es.map { "chrome":"52", "firefox":"50", "ie":"11" } + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.queue-microtask { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/options.json new file mode 100644 index 0000000000..14e2af08bf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": "3.0" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt new file mode 100644 index 0000000000..57e9205ba7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt @@ -0,0 +1,72 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/input.js] +The corejs3 polyfill added the following polyfills: + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.0-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/options.json new file mode 100644 index 0000000000..de96a9fb2a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": "3.1" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt new file mode 100644 index 0000000000..19634eb1a5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt @@ -0,0 +1,75 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/input.js] +The corejs3 polyfill added the following polyfills: + es.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es.map { "chrome":"52", "firefox":"50", "ie":"11" } + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.queue-microtask { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/options.json new file mode 100644 index 0000000000..de96a9fb2a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/options.json @@ -0,0 +1,19 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage", + "corejs": "3.1" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt new file mode 100644 index 0000000000..66e0b250ce --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt @@ -0,0 +1,72 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/input.js] +The corejs3 polyfill added the following polyfills: + es.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom-collections.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-versions-strings-minor-3.1-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/input.mjs b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/input.mjs new file mode 100644 index 0000000000..c3030bdd62 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/input.mjs @@ -0,0 +1 @@ +import '@babel/polyfill'; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/options.json new file mode 100644 index 0000000000..a1d0ee8004 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/options.json @@ -0,0 +1,17 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 55 + }, + "useBuiltIns": "usage", + "corejs": 3 + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/stderr.txt new file mode 100644 index 0000000000..8bfe6af5c5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/stderr.txt @@ -0,0 +1,2 @@ +When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed. + Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/stdout.txt new file mode 100644 index 0000000000..7daf816461 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/stdout.txt @@ -0,0 +1,34 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "55" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"55" } + proposal-logical-assignment-operators { "chrome":"55" } + proposal-nullish-coalescing-operator { "chrome":"55" } + proposal-optional-chaining { "chrome":"55" } + proposal-json-strings { "chrome":"55" } + proposal-optional-catch-binding { "chrome":"55" } + proposal-async-generator-functions { "chrome":"55" } + proposal-object-rest-spread { "chrome":"55" } + transform-dotall-regex { "chrome":"55" } + proposal-unicode-property-regex { "chrome":"55" } + transform-named-capturing-groups-regex { "chrome":"55" } + proposal-export-namespace-from { "chrome":"55" } + transform-modules-commonjs { "chrome":"55" } + proposal-dynamic-import { "chrome":"55" } +corejs3: `DEBUG` option + +Using targets: { + "chrome": "55" +} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-with-import/input.mjs] +Based on your code and targets, the corejs3 polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/input.js new file mode 100644 index 0000000000..6113c3b69b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/input.js @@ -0,0 +1,7 @@ +const foo = new Promise((resolve) => { + resolve(new Map()); +}); + +queueMicrotask(() => globalThis); + +Observable.from(10); diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/options.json new file mode 100644 index 0000000000..e811528ee1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/stderr.txt new file mode 100644 index 0000000000..f7b27dd07f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/stdout.txt new file mode 100644 index 0000000000..6fe5062754 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/stdout.txt @@ -0,0 +1,74 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/input.js] +The corejs2 polyfill added the following polyfills: + es6.object.to-string { "chrome":"52", "firefox":"50", "ie":"11" } + es6.promise { "chrome":"52", "firefox":"50", "ie":"11" } + es6.map { "chrome":"52", "firefox":"50", "ie":"11" } + es6.string.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + es6.array.iterator { "chrome":"52", "firefox":"50", "ie":"11" } + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/input.js new file mode 100644 index 0000000000..4915d62092 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/input.js @@ -0,0 +1,3 @@ +function* a() { + yield* 1; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/options.json new file mode 100644 index 0000000000..e811528ee1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/stderr.txt new file mode 100644 index 0000000000..2bcc7b0c30 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/stdout.txt new file mode 100644 index 0000000000..7281e2eda2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/stdout.txt @@ -0,0 +1,70 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/input.js] +The corejs2 polyfill added the following polyfills: + web.dom.iterable { "chrome":"52", "firefox":"50", "ie":"11" } + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-2/input.js] +The regenerator polyfill added the following polyfills: + regenerator-runtime diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/input.js new file mode 100644 index 0000000000..4ec1fa479e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/input.js @@ -0,0 +1 @@ +var foo = "bar"; diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/options.json new file mode 100644 index 0000000000..e811528ee1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/stderr.txt new file mode 100644 index 0000000000..2bcc7b0c30 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/stdout.txt new file mode 100644 index 0000000000..4d7b6e8780 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/stdout.txt @@ -0,0 +1,68 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/input.js] +Based on your code and targets, the corejs2 polyfill did not add any polyfill. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-1/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/input.js b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/input.js new file mode 100644 index 0000000000..3fbea9d211 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/input.js @@ -0,0 +1,5 @@ +var x = 0; + +for (var i = 0; i < 5; i++) { + x += i; +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/options.json b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/options.json new file mode 100644 index 0000000000..e811528ee1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/options.json @@ -0,0 +1,18 @@ +{ + "validateLogs": true, + "ignoreOutput": true, + "presets": [ + [ + "env", + { + "debug": true, + "targets": { + "chrome": 52, + "firefox": 50, + "ie": 11 + }, + "useBuiltIns": "usage" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/stderr.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/stderr.txt new file mode 100644 index 0000000000..2bcc7b0c30 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/stderr.txt @@ -0,0 +1,9 @@ +WARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option. + +You should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands: + + npm install --save core-js@2 npm install --save core-js@3 + yarn add core-js@2 yarn add core-js@3 + +More info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins +More info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/stdout.txt new file mode 100644 index 0000000000..1cabfb18e8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/stdout.txt @@ -0,0 +1,68 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-logical-assignment-operators { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-nullish-coalescing-operator { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-chaining { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" } + transform-parameters { "firefox":"50", "ie":"11" } + proposal-async-generator-functions { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-object-rest-spread { "chrome":"52", "firefox":"50", "ie":"11" } + transform-dotall-regex { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-unicode-property-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" } + transform-async-to-generator { "chrome":"52", "firefox":"50", "ie":"11" } + transform-exponentiation-operator { "firefox":"50", "ie":"11" } + transform-template-literals { "ie":"11" } + transform-literals { "firefox":"50", "ie":"11" } + transform-function-name { "firefox":"50", "ie":"11" } + transform-arrow-functions { "ie":"11" } + transform-classes { "ie":"11" } + transform-object-super { "ie":"11" } + transform-shorthand-properties { "ie":"11" } + transform-duplicate-keys { "ie":"11" } + transform-computed-properties { "ie":"11" } + transform-for-of { "firefox":"50", "ie":"11" } + transform-sticky-regex { "ie":"11" } + transform-unicode-escapes { "firefox":"50", "ie":"11" } + transform-unicode-regex { "ie":"11" } + transform-spread { "ie":"11" } + transform-destructuring { "firefox":"50", "ie":"11" } + transform-block-scoping { "firefox":"50", "ie":"11" } + transform-typeof-symbol { "ie":"11" } + transform-new-target { "ie":"11" } + transform-regenerator { "firefox":"50", "ie":"11" } + proposal-export-namespace-from { "chrome":"52", "firefox":"50", "ie":"11" } + transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" } + proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" } +corejs2: `DEBUG` option + +Using targets: { + "chrome": "52", + "firefox": "50", + "ie": "11" +} + +Using polyfills with `usage-global` method: +regenerator: `DEBUG` option + +Using targets: {} + +Using polyfills with `usage-global` method: + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/input.js] +Based on your code and targets, the corejs2 polyfill did not add any polyfill. + +[/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-no-corejs-none-2/input.js] +Based on your code and targets, the regenerator polyfill did not add any polyfill. diff --git a/packages/babel-preset-env/test/fixtures/debug/options.json b/packages/babel-preset-env/test/fixtures/debug/options.json new file mode 100644 index 0000000000..cbf6d15954 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/debug/options.json @@ -0,0 +1,3 @@ +{ + "BABEL_8_BREAKING": true +} diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-1/stdout.txt index 89169214b8..578624df53 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-2/stdout.txt index 72eeac6f31..39442d14d9 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-1/stdout.txt index 7c1b49f735..f9b13beb14 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-2/stdout.txt index d7a380c624..485bb76b60 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-none-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-1/stdout.txt index 1e5ba777af..f5e168abf6 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-2/stdout.txt index 9283ed7c14..bd7de59e0a 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-proposals-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt index 9a9726a787..50ada08be0 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt @@ -59,7 +59,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt index 6a487e877a..a41f3f418f 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt @@ -59,7 +59,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-1/stdout.txt index 090daf68d7..44319bac5e 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-2/stdout.txt index e272d731a5..88c9038c02 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-1/stdout.txt index 1f678d0183..d1d8d4759f 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-2/stdout.txt index ad502b28d9..a0fc2b5555 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-none-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-1/stdout.txt index c346ff7159..32dfea6140 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-2/stdout.txt index aaceee58d6..823a1fe254 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-proposals-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt index bbbe4f1d4a..90e4d30026 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt @@ -59,7 +59,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt index 3ee6e27def..bc52e3131d 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt @@ -59,7 +59,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt index 41e5e518fb..e17146cb3f 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt index 6709293127..ad066b75bf 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.0-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt index 6c0568b634..211b4737c6 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt index d3bbdba2e7..126dd89ffb 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-versions-strings-minor-3.1-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-1/stdout.txt index 2eadca3a50..2224a90d5e 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-2/stdout.txt index 3b2769a75c..a50ffb19e1 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-1/stdout.txt index 1442c3a2f0..039d5a4766 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-1/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-2/stdout.txt index 47eeac8592..074cc9727c 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-no-corejs-none-2/stdout.txt @@ -57,7 +57,16 @@ Using targets: { Using polyfills with `usage-global` method: regenerator: `DEBUG` option -Using targets: {} +Using targets: { + "android": "85", + "chrome": "84", + "edge": "85", + "firefox": "78", + "ios": "12.2", + "opera": "71", + "safari": "13.1", + "samsung": "11.1" +} Using polyfills with `usage-global` method: diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/input.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/input.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/options.json new file mode 100644 index 0000000000..265e8ce95c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/options.json @@ -0,0 +1,9 @@ +{ + "validateLogs": true, + "caller": { + "name": "test-fixture", + "supportsStaticESM": true, + "supportsDynamicImport": true + }, + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/output.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/output.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-supported/output.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/input.mjs new file mode 100644 index 0000000000..9261e2a807 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/input.mjs @@ -0,0 +1 @@ +import("foo"); // warns diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/options.json new file mode 100644 index 0000000000..59459d9e3c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/options.json @@ -0,0 +1,9 @@ +{ + "validateLogs": true, + "caller": { + "name": "test-fixture", + "supportsStaticESM": true, + "supportsDynamicImport": false + }, + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/output.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/output.mjs new file mode 100644 index 0000000000..9261e2a807 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/output.mjs @@ -0,0 +1 @@ +import("foo"); // warns diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/stderr.txt b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/stderr.txt new file mode 100644 index 0000000000..f3e3df4708 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-supported-import-unsupported/stderr.txt @@ -0,0 +1 @@ +Dynamic import can only be supported when transforming ES modules to AMD, CommonJS or SystemJS. Only the parser plugin will be enabled. diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/input.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/input.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/options.json new file mode 100644 index 0000000000..a0d90ae665 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/options.json @@ -0,0 +1,9 @@ +{ + "validateLogs": true, + "caller": { + "name": "test-fixture", + "supportsStaticESM": false, + "supportsSynamicImport": false + }, + "presets": [["env", { "targets": { "browsers": "ie 6" } }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/output.js new file mode 100644 index 0000000000..ce6e78ffea --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/auto-esm-unsupported-import-unsupported/output.js @@ -0,0 +1,5 @@ +"use strict"; + +Promise.resolve().then(function () { + return babelHelpers.interopRequireWildcard(require("foo")); +}); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/input.js b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/input.js new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/input.js @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/options.json new file mode 100644 index 0000000000..dad5640aa5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/options.json @@ -0,0 +1,4 @@ +{ + "validateLogs": true, + "presets": [["env", { "modules": "amd" }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/output.js new file mode 100644 index 0000000000..e0114f02db --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-amd/output.js @@ -0,0 +1,7 @@ +define(["require"], function (_require) { + new Promise(function (_resolve, _reject) { + return _require(["foo"], function (imported) { + return _resolve(babelHelpers.interopRequireWildcard(imported)); + }, _reject); + }); +}); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/input.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/input.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/options.json new file mode 100644 index 0000000000..091b0e2a32 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/options.json @@ -0,0 +1,4 @@ +{ + "validateLogs": true, + "presets": [["env", { "modules": "cjs" }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/output.js new file mode 100644 index 0000000000..ce6e78ffea --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-cjs/output.js @@ -0,0 +1,5 @@ +"use strict"; + +Promise.resolve().then(function () { + return babelHelpers.interopRequireWildcard(require("foo")); +}); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/input.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/input.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/options.json new file mode 100644 index 0000000000..c7c066f784 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/options.json @@ -0,0 +1,4 @@ +{ + "validateLogs": true, + "presets": [["env", { "modules": false }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/output.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/output.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-false/output.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/input.mjs new file mode 100644 index 0000000000..99223a45b3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/input.mjs @@ -0,0 +1 @@ +import("foo"); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/options.json new file mode 100644 index 0000000000..99b51f1128 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/options.json @@ -0,0 +1,4 @@ +{ + "validateLogs": true, + "presets": [["env", { "modules": "systemjs", "targets": { "browsers": "ie 6" } }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/output.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/output.mjs new file mode 100644 index 0000000000..6fbdfb301c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-systemjs/output.mjs @@ -0,0 +1,10 @@ +System.register([], function (_export, _context) { + "use strict"; + + return { + setters: [], + execute: function () { + _context["import"]("foo"); + } + }; +}); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/input.mjs b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/input.mjs new file mode 100644 index 0000000000..9261e2a807 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/input.mjs @@ -0,0 +1 @@ +import("foo"); // warns diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/options.json new file mode 100644 index 0000000000..6315da5c54 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/options.json @@ -0,0 +1,4 @@ +{ + "validateLogs": true, + "presets": [["env", { "modules": "umd" }]] +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/output.js new file mode 100644 index 0000000000..f4b267b43c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/output.js @@ -0,0 +1,17 @@ +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.input = mod.exports; + } +})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function () { + "use strict"; + + import("foo"); // warns +}); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/stderr.txt b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/stderr.txt new file mode 100644 index 0000000000..f3e3df4708 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/modules-umd/stderr.txt @@ -0,0 +1 @@ +Dynamic import can only be supported when transforming ES modules to AMD, CommonJS or SystemJS. Only the parser plugin will be enabled. diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/options.json new file mode 100644 index 0000000000..29a3f0e841 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import-babel-7/options.json @@ -0,0 +1,3 @@ +{ + "BABEL_8_BREAKING": false +} diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import/auto-esm-unsupported-import-unsupported/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import/auto-esm-unsupported-import-unsupported/output.js index ce6e78ffea..7d75d23d59 100644 --- a/packages/babel-preset-env/test/fixtures/dynamic-import/auto-esm-unsupported-import-unsupported/output.js +++ b/packages/babel-preset-env/test/fixtures/dynamic-import/auto-esm-unsupported-import-unsupported/output.js @@ -1,5 +1,3 @@ "use strict"; -Promise.resolve().then(function () { - return babelHelpers.interopRequireWildcard(require("foo")); -}); +Promise.resolve().then(() => babelHelpers.interopRequireWildcard(require("foo"))); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import/modules-amd/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import/modules-amd/output.js index e0114f02db..8c5690b91c 100644 --- a/packages/babel-preset-env/test/fixtures/dynamic-import/modules-amd/output.js +++ b/packages/babel-preset-env/test/fixtures/dynamic-import/modules-amd/output.js @@ -1,7 +1,3 @@ define(["require"], function (_require) { - new Promise(function (_resolve, _reject) { - return _require(["foo"], function (imported) { - return _resolve(babelHelpers.interopRequireWildcard(imported)); - }, _reject); - }); + new Promise((_resolve, _reject) => _require(["foo"], imported => _resolve(babelHelpers.interopRequireWildcard(imported)), _reject)); }); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import/modules-cjs/output.js b/packages/babel-preset-env/test/fixtures/dynamic-import/modules-cjs/output.js index ce6e78ffea..7d75d23d59 100644 --- a/packages/babel-preset-env/test/fixtures/dynamic-import/modules-cjs/output.js +++ b/packages/babel-preset-env/test/fixtures/dynamic-import/modules-cjs/output.js @@ -1,5 +1,3 @@ "use strict"; -Promise.resolve().then(function () { - return babelHelpers.interopRequireWildcard(require("foo")); -}); +Promise.resolve().then(() => babelHelpers.interopRequireWildcard(require("foo"))); diff --git a/packages/babel-preset-env/test/fixtures/dynamic-import/options.json b/packages/babel-preset-env/test/fixtures/dynamic-import/options.json new file mode 100644 index 0000000000..cbf6d15954 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/dynamic-import/options.json @@ -0,0 +1,3 @@ +{ + "BABEL_8_BREAKING": true +} diff --git a/packages/babel-preset-env/test/fixtures/plugins-integration/options.json b/packages/babel-preset-env/test/fixtures/plugins-integration/options.json new file mode 100644 index 0000000000..7e79e932d1 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/plugins-integration/options.json @@ -0,0 +1,5 @@ +{ + "targets": { + "browsers": "ie 6" + } +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/browserslist b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/browserslist new file mode 100644 index 0000000000..d0ae78fe6a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/browserslist @@ -0,0 +1 @@ +chrome 55 diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/options.json new file mode 100644 index 0000000000..e5b755470d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "configPath": "../fixtures/preset-options/browserslist-config-ignore-with-false", + "modules": false, + "ignoreBrowserslistConfig": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/output.mjs new file mode 100644 index 0000000000..f688910ec0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-config-with-false/output.mjs @@ -0,0 +1 @@ +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/options.json new file mode 100644 index 0000000000..e5b755470d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "configPath": "../fixtures/preset-options/browserslist-config-ignore-with-false", + "modules": false, + "ignoreBrowserslistConfig": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/output.mjs new file mode 100644 index 0000000000..f688910ec0 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/output.mjs @@ -0,0 +1 @@ +var a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/package.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/package.json new file mode 100644 index 0000000000..5862d68270 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config-ignore-package-with-false/package.json @@ -0,0 +1,3 @@ +{ + "browserslist": "last 1 chrome version" +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/browserslist b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/browserslist new file mode 100644 index 0000000000..d0ae78fe6a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/browserslist @@ -0,0 +1 @@ +chrome 55 diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/options.json new file mode 100644 index 0000000000..7fa5af3baa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "configPath": "packages/babel-preset-env/test/fixtures/preset-options/browserslist-config", + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/output.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-config/output.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/browserslist b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/browserslist new file mode 100644 index 0000000000..e94f8140cc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/browserslist @@ -0,0 +1 @@ +defaults diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/input.mjs new file mode 100644 index 0000000000..bf68e2dbd8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/input.mjs @@ -0,0 +1 @@ +const test = () => ""; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/options.json new file mode 100644 index 0000000000..678d076175 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "configPath": "packages/babel-preset-env/test/fixtures/preset-options/browserslist-default-via-config", + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/output.mjs new file mode 100644 index 0000000000..0b90fe8593 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-default-via-config/output.mjs @@ -0,0 +1,3 @@ +var test = function test() { + return ""; +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/input.mjs new file mode 100644 index 0000000000..e984854c83 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/input.mjs @@ -0,0 +1 @@ +const test = (a, [b], c) => ""; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/options.json new file mode 100644 index 0000000000..63828ae6c6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "node": "current", + "browsers": ["defaults", "not ie <= 10", "not ie_mob <= 10"] + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/output.js new file mode 100644 index 0000000000..533cc51589 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults-not-ie/output.js @@ -0,0 +1,8 @@ +"use strict"; + +var test = function test(a, _ref, c) { + var _ref2 = babelHelpers.slicedToArray(_ref, 1), + b = _ref2[0]; + + return ""; +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/input.mjs new file mode 100644 index 0000000000..bf68e2dbd8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/input.mjs @@ -0,0 +1 @@ +const test = () => ""; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/options.json new file mode 100644 index 0000000000..fb7e8d2043 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": "defaults" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/output.js new file mode 100644 index 0000000000..a5703ba6f5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-defaults/output.js @@ -0,0 +1,5 @@ +"use strict"; + +var test = function test() { + return ""; +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/options.json new file mode 100644 index 0000000000..edb525659b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/options.json @@ -0,0 +1,14 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "configPath": "../fixtures/preset-options/browserslist-package-ignore-with-array", + "targets": { + "chrome": 55 + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/output.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/output.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/package.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/package.json new file mode 100644 index 0000000000..321ba17e87 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package-ignore-with-targets/package.json @@ -0,0 +1,3 @@ +{ + "browserslist": "last 1 ie version" +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/options.json new file mode 100644 index 0000000000..79c5b70108 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "configPath": "packages/babel-preset-env/test/fixtures/preset-options/browserslist-package", + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/output.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/output.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/package.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/package.json new file mode 100644 index 0000000000..5862d68270 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/browserslist-package/package.json @@ -0,0 +1,3 @@ +{ + "browserslist": "last 1 chrome version" +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/input.js new file mode 100644 index 0000000000..e09b4ffd23 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/input.js @@ -0,0 +1,3 @@ +((a, { b = 0, c = 3 }) => { + return a === 1 && b === 2 && c === 3; +})(1, { b: 2 }); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/options.json new file mode 100644 index 0000000000..d14a50fd6c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["edge >= 15"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/output.js new file mode 100644 index 0000000000..dfec033c1b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/destructuring-edge/output.js @@ -0,0 +1,9 @@ +((a, _ref) => { + let { + b = 0, + c = 3 + } = _ref; + return a === 1 && b === 2 && c === 3; +})(1, { + b: 2 +}); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/input.mjs new file mode 100644 index 0000000000..ba2d7615b7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/input.mjs @@ -0,0 +1 @@ +const a = "1"; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/options.json new file mode 100644 index 0000000000..e58d228193 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/options.json @@ -0,0 +1,3 @@ +{ + "presets": [["../../../../lib", {}]] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/output.js new file mode 100644 index 0000000000..b298c5e19d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/empty-options/output.js @@ -0,0 +1,3 @@ +"use strict"; + +var a = "1"; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/input.mjs new file mode 100644 index 0000000000..09032f0c51 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/input.mjs @@ -0,0 +1 @@ +async function f () { } diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/options.json new file mode 100644 index 0000000000..7d6cc02779 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { "esmodules": true }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/output.mjs new file mode 100644 index 0000000000..c1b1a81f69 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/esmodules-async-functions/output.mjs @@ -0,0 +1,8 @@ +function f() { + return _f.apply(this, arguments); +} + +function _f() { + _f = babelHelpers.asyncToGenerator(function* () {}); + return _f.apply(this, arguments); +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/input.mjs new file mode 100644 index 0000000000..4e6a6de653 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/input.mjs @@ -0,0 +1 @@ +class Foo {} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/options.json new file mode 100644 index 0000000000..e990f37eb8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/options.json @@ -0,0 +1,14 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 61 + }, + "include": ["@babel/plugin-transform-classes"], + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs new file mode 100644 index 0000000000..657b1ed962 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs @@ -0,0 +1,3 @@ +let Foo = function Foo() { + babelHelpers.classCallCheck(this, Foo); +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/input.mjs new file mode 100644 index 0000000000..4e6a6de653 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/input.mjs @@ -0,0 +1 @@ +class Foo {} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/options.json new file mode 100644 index 0000000000..615248481b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/options.json @@ -0,0 +1,14 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": 61 + }, + "include": ["transform-classes"], + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs new file mode 100644 index 0000000000..657b1ed962 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs @@ -0,0 +1,3 @@ +let Foo = function Foo() { + babelHelpers.classCallCheck(this, Foo); +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/input.mjs new file mode 100644 index 0000000000..02d939c57f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/input.mjs @@ -0,0 +1 @@ +const a = () => 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/options.json new file mode 100644 index 0000000000..a9d6ca4f14 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ios >= 10"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/output.mjs new file mode 100644 index 0000000000..98caa184e6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10/output.mjs @@ -0,0 +1 @@ +var a = () => 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/input.mjs new file mode 100644 index 0000000000..539f11356f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/input.mjs @@ -0,0 +1,2 @@ +const a = () => 1; + diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/options.json new file mode 100644 index 0000000000..34749d2aed --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ios >= 10.3"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/output.mjs new file mode 100644 index 0000000000..98caa184e6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-10_3/output.mjs @@ -0,0 +1 @@ +var a = () => 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/input.mjs new file mode 100644 index 0000000000..539f11356f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/input.mjs @@ -0,0 +1,2 @@ +const a = () => 1; + diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/options.json new file mode 100644 index 0000000000..073d89cfc8 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ios >= 11"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/output.mjs new file mode 100644 index 0000000000..02d939c57f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-11/output.mjs @@ -0,0 +1 @@ +const a = () => 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/input.mjs new file mode 100644 index 0000000000..02d939c57f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/input.mjs @@ -0,0 +1 @@ +const a = () => 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/options.json new file mode 100644 index 0000000000..ef1f77b91a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ios >= 6"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/output.mjs new file mode 100644 index 0000000000..6bf835e390 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/ios-6/output.mjs @@ -0,0 +1,3 @@ +var a = function a() { + return 1; +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/input.mjs new file mode 100644 index 0000000000..6d69e92eaa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/input.mjs @@ -0,0 +1 @@ +typeof Symbol(); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/options.json new file mode 100644 index 0000000000..b3fcaf5a97 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/options.json @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "loose": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/output.js new file mode 100644 index 0000000000..565dccdd11 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-typeof-symbol/output.js @@ -0,0 +1,3 @@ +"use strict"; + +typeof Symbol(); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/input.mjs new file mode 100644 index 0000000000..6d69e92eaa --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/input.mjs @@ -0,0 +1 @@ +typeof Symbol(); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/options.json new file mode 100644 index 0000000000..9957f4b6dd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/options.json @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "loose": true, + "targets": { "browsers": "ie 6" }, + "include": ["transform-typeof-symbol"] + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/output.js new file mode 100644 index 0000000000..d14de6d95b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/loose-with-typeof-symbol-includes/output.js @@ -0,0 +1,3 @@ +"use strict"; + +babelHelpers["typeof"](Symbol()); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/input.mjs new file mode 100644 index 0000000000..ba2d7615b7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/input.mjs @@ -0,0 +1 @@ +const a = "1"; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/options.json new file mode 100644 index 0000000000..e6645e19b6 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/options.json @@ -0,0 +1,3 @@ +{ + "presets": ["../../../../lib"] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/output.js new file mode 100644 index 0000000000..b298c5e19d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/no-options/output.js @@ -0,0 +1,3 @@ +"use strict"; + +var a = "1"; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/options.json new file mode 100644 index 0000000000..29a3f0e841 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/options.json @@ -0,0 +1,3 @@ +{ + "BABEL_8_BREAKING": false +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/input.mjs new file mode 100644 index 0000000000..e94d1ea8cf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/input.mjs @@ -0,0 +1 @@ +({ if: 42 }).if == 42; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/options.json new file mode 100644 index 0000000000..fe3139009d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie 8"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/output.mjs new file mode 100644 index 0000000000..94935cbf0e --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie8/output.mjs @@ -0,0 +1,3 @@ +({ + "if": 42 +})["if"] == 42; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/input.mjs new file mode 100644 index 0000000000..e94d1ea8cf --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/input.mjs @@ -0,0 +1 @@ +({ if: 42 }).if == 42; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/options.json new file mode 100644 index 0000000000..f762db2a15 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie 9"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/output.mjs new file mode 100644 index 0000000000..2d428718c2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-keys-ie9/output.mjs @@ -0,0 +1,3 @@ +({ + if: 42 +}).if == 42; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/input.mjs new file mode 100644 index 0000000000..b19e8003c3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/input.mjs @@ -0,0 +1 @@ +var abstract = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/options.json new file mode 100644 index 0000000000..fe3139009d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie 8"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/output.mjs new file mode 100644 index 0000000000..ef9ec72b0c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie8/output.mjs @@ -0,0 +1 @@ +var _abstract = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/input.mjs new file mode 100644 index 0000000000..b19e8003c3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/input.mjs @@ -0,0 +1 @@ +var abstract = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/options.json new file mode 100644 index 0000000000..f762db2a15 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["ie 9"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/output.mjs new file mode 100644 index 0000000000..b19e8003c3 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/reserved-names-ie9/output.mjs @@ -0,0 +1 @@ +var abstract = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/input.js new file mode 100644 index 0000000000..4012fcd055 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/input.js @@ -0,0 +1,5 @@ +{ + let a = 3 +} + +let a = 3 diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/options.json new file mode 100644 index 0000000000..daee94dc03 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/options.json @@ -0,0 +1,14 @@ +{ + "validateLogs": true, + "presets": [ + [ + "../../../../lib", + { + "debug": true, + "targets": { + "safari": "10" + } + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/output.js new file mode 100644 index 0000000000..410ac6d405 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/output.js @@ -0,0 +1,4 @@ +{ + var _a = 3; +} +var a = 3; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/stdout.txt b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/stdout.txt new file mode 100644 index 0000000000..720eb9ca60 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-10_3-block-scoped/stdout.txt @@ -0,0 +1,31 @@ +@babel/preset-env: `DEBUG` option + +Using targets: +{ + "safari": "10" +} + +Using modules transform: auto + +Using plugins: + proposal-numeric-separator { "safari":"10" } + proposal-logical-assignment-operators { "safari":"10" } + proposal-nullish-coalescing-operator { "safari":"10" } + proposal-optional-chaining { "safari":"10" } + proposal-json-strings { "safari":"10" } + proposal-optional-catch-binding { "safari":"10" } + proposal-async-generator-functions { "safari":"10" } + proposal-object-rest-spread { "safari":"10" } + transform-dotall-regex { "safari":"10" } + proposal-unicode-property-regex { "safari":"10" } + transform-named-capturing-groups-regex { "safari":"10" } + transform-async-to-generator { "safari":"10" } + transform-exponentiation-operator { "safari":"10" } + transform-template-literals { "safari":"10" } + transform-unicode-regex { "safari":"10" } + transform-block-scoping { "safari":"10" } + proposal-export-namespace-from { "safari":"10" } + transform-modules-commonjs { "safari":"10" } + proposal-dynamic-import { "safari":"10" } + +Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set. diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/input.js new file mode 100644 index 0000000000..4d45d4de3a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/input.js @@ -0,0 +1 @@ +tag`Safari 12 borked`; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/options.json new file mode 100644 index 0000000000..97a5889f76 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": "safari 9" + }, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/output.js new file mode 100644 index 0000000000..f6feac002a --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tagged-template-literals/output.js @@ -0,0 +1,3 @@ +var _templateObject; + +tag(_templateObject || (_templateObject = babelHelpers.taggedTemplateLiteral(["Safari 12 borked"]))); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/input.js new file mode 100644 index 0000000000..c13687d6fd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/input.js @@ -0,0 +1,4 @@ +let n = { x, y, ...z }; +try { + throw 0; +} catch {} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/options.json new file mode 100644 index 0000000000..1a2ac1b59d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": "safari tp" + }, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/output.js new file mode 100644 index 0000000000..5f8f4633db --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp-browsers/output.js @@ -0,0 +1,9 @@ +let n = { + x, + y, + ...z +}; + +try { + throw 0; +} catch {} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/input.js new file mode 100644 index 0000000000..da92b9ceca --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/input.js @@ -0,0 +1 @@ +let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/options.json new file mode 100644 index 0000000000..aa7229719b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "safari": "tp" + }, + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/output.js new file mode 100644 index 0000000000..788499e332 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/safari-tp/output.js @@ -0,0 +1,10 @@ +let { + x, + y, + ...z +} = { + x: 1, + y: 2, + a: 3, + b: 4 +}; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/input.js new file mode 100644 index 0000000000..d95854b64f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/input.js @@ -0,0 +1,6 @@ +let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; +let n = { x, y, ...z }; +async function* agf() { + await 1; + yield 2; +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/options.json new file mode 100644 index 0000000000..0b8df73444 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/options.json @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "shippedProposals": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/output.js new file mode 100644 index 0000000000..56e3012743 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/shippedProposals/output.js @@ -0,0 +1,40 @@ +var _x$y$a$b = { + x: 1, + y: 2, + a: 3, + b: 4 +}, + x = _x$y$a$b.x, + y = _x$y$a$b.y, + z = babelHelpers.objectWithoutProperties(_x$y$a$b, ["x", "y"]); +var n = babelHelpers.objectSpread2({ + x: x, + y: y +}, z); + +function agf() { + return _agf.apply(this, arguments); +} + +function _agf() { + _agf = babelHelpers.wrapAsyncGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return babelHelpers.awaitAsyncGenerator(1); + + case 2: + _context.next = 4; + return 2; + + case 4: + case "end": + return _context.stop(); + } + } + }, _callee); + })); + return _agf.apply(this, arguments); +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/input.js new file mode 100644 index 0000000000..51403eebdc --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/input.js @@ -0,0 +1,2 @@ +const bar = "bar"; +const x = () => `foo${bar}`; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/options.json new file mode 100644 index 0000000000..7d73fcdc98 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/options.json @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "spec": true + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/output.js new file mode 100644 index 0000000000..f05dd1d0c2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/spec/output.js @@ -0,0 +1,8 @@ +var _this = this; + +var bar = "bar"; + +var x = function x() { + babelHelpers.newArrowCheck(this, _this); + return "foo".concat(bar); +}.bind(this); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/options.json new file mode 100644 index 0000000000..7a0a4baf72 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "chrome": "55" + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/output.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-object/output.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/input.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/input.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/options.json new file mode 100644 index 0000000000..e212d72717 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": "chrome 55", + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/output.mjs new file mode 100644 index 0000000000..54b82a09ad --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/targets-as-string/output.mjs @@ -0,0 +1 @@ +const a = 1; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/input.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/input.js new file mode 100644 index 0000000000..4dc88814e7 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/input.js @@ -0,0 +1 @@ +/\p{Script_Extensions=Greek}/u; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/options.json new file mode 100644 index 0000000000..0594e8b2ce --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/options.json @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": "chrome 49" + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/output.js b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/output.js new file mode 100644 index 0000000000..ca4cbfc0fb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/unicode-property-regex-chrome-49/output.js @@ -0,0 +1 @@ +/(?:[\u0342\u0345\u0370-\u0373\u0375-\u0377\u037A-\u037D\u037F\u0384\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03E1\u03F0-\u03FF\u1D26-\u1D2A\u1D5D-\u1D61\u1D66-\u1D6A\u1DBF-\u1DC1\u1F00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FC4\u1FC6-\u1FD3\u1FD6-\u1FDB\u1FDD-\u1FEF\u1FF2-\u1FF4\u1FF6-\u1FFE\u2126\uAB65]|\uD800[\uDD40-\uDD8E\uDDA0]|\uD834[\uDE00-\uDE45])/; diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/input.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/input.mjs new file mode 100644 index 0000000000..45366a4fcb --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/input.mjs @@ -0,0 +1,24 @@ +Array.from; // static method +Map; // built-in +new Promise(); // new builtin +Symbol.match; // as member expression +_arr[Symbol.iterator](); // Symbol.iterator + +// no import +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; +_arr9[Symbol2.iterator](); +_arr9[Symbol.iterator2](); + +G.assign; // static method +function H(WeakMap) { var blah = new WeakMap(); } // shadowed + +// not covered by this plugin +var asdf = 'copyWithin'; +i[asdf] // computed with identifier +j[`copyWithin`] // computed with template +var { [asdf]: _a } = k; // computed diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/options.json b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/options.json new file mode 100644 index 0000000000..d7fc8663bd --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/options.json @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "useBuiltIns": false, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/output.mjs new file mode 100644 index 0000000000..3329a9599d --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/useBuiltIns-false/output.mjs @@ -0,0 +1,38 @@ +Array.from; // static method + +Map; // built-in + +new Promise(); // new builtin + +Symbol.match; // as member expression + +_arr[Symbol.iterator](); // Symbol.iterator +// no import + + +Array.asdf; +Array2.from; +Map2; +new Promise2(); +Symbol.asdf; +Symbol2.match; + +_arr9[Symbol2.iterator](); + +_arr9[Symbol.iterator2](); + +G.assign; // static method + +function H(WeakMap) { + var blah = new WeakMap(); +} // shadowed +// not covered by this plugin + + +var asdf = 'copyWithin'; +i[asdf]; // computed with identifier + +j["copyWithin"]; // computed with template + +var _k = k, + _a = _k[asdf]; // computed diff --git a/packages/babel-preset-env/test/fixtures/preset-options/empty-options/output.js b/packages/babel-preset-env/test/fixtures/preset-options/empty-options/output.js index b298c5e19d..b54d0243d2 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/empty-options/output.js +++ b/packages/babel-preset-env/test/fixtures/preset-options/empty-options/output.js @@ -1,3 +1,3 @@ "use strict"; -var a = "1"; +const a = "1"; diff --git a/packages/babel-preset-env/test/fixtures/preset-options/no-options/output.js b/packages/babel-preset-env/test/fixtures/preset-options/no-options/output.js index b298c5e19d..b54d0243d2 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/no-options/output.js +++ b/packages/babel-preset-env/test/fixtures/preset-options/no-options/output.js @@ -1,3 +1,3 @@ "use strict"; -var a = "1"; +const a = "1"; diff --git a/packages/babel-preset-env/test/fixtures/preset-options/options.json b/packages/babel-preset-env/test/fixtures/preset-options/options.json new file mode 100644 index 0000000000..cbf6d15954 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options/options.json @@ -0,0 +1,3 @@ +{ + "BABEL_8_BREAKING": true +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options/shippedProposals/output.js b/packages/babel-preset-env/test/fixtures/preset-options/shippedProposals/output.js index 56e3012743..0314a0e33f 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/shippedProposals/output.js +++ b/packages/babel-preset-env/test/fixtures/preset-options/shippedProposals/output.js @@ -1,40 +1,20 @@ -var _x$y$a$b = { +let { + x, + y, + ...z +} = { x: 1, y: 2, a: 3, b: 4 -}, - x = _x$y$a$b.x, - y = _x$y$a$b.y, - z = babelHelpers.objectWithoutProperties(_x$y$a$b, ["x", "y"]); -var n = babelHelpers.objectSpread2({ - x: x, - y: y -}, z); +}; +let n = { + x, + y, + ...z +}; -function agf() { - return _agf.apply(this, arguments); -} - -function _agf() { - _agf = babelHelpers.wrapAsyncGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return babelHelpers.awaitAsyncGenerator(1); - - case 2: - _context.next = 4; - return 2; - - case 4: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - return _agf.apply(this, arguments); +async function* agf() { + await 1; + yield 2; } diff --git a/packages/babel-preset-env/test/fixtures/preset-options/spec/output.js b/packages/babel-preset-env/test/fixtures/preset-options/spec/output.js index f05dd1d0c2..4ca93cf143 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/spec/output.js +++ b/packages/babel-preset-env/test/fixtures/preset-options/spec/output.js @@ -1,8 +1,3 @@ -var _this = this; +const bar = "bar"; -var bar = "bar"; - -var x = function x() { - babelHelpers.newArrowCheck(this, _this); - return "foo".concat(bar); -}.bind(this); +const x = () => "foo".concat(bar); diff --git a/packages/babel-preset-env/test/fixtures/preset-options/useBuiltIns-false/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options/useBuiltIns-false/output.mjs index 3329a9599d..3fddc1f190 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/useBuiltIns-false/output.mjs +++ b/packages/babel-preset-env/test/fixtures/preset-options/useBuiltIns-false/output.mjs @@ -34,5 +34,6 @@ i[asdf]; // computed with identifier j["copyWithin"]; // computed with template -var _k = k, - _a = _k[asdf]; // computed +var { + [asdf]: _a +} = k; // computed diff --git a/packages/babel-preset-env/test/fixtures/sanity/options.json b/packages/babel-preset-env/test/fixtures/sanity/options.json new file mode 100644 index 0000000000..2ea5b48627 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/sanity/options.json @@ -0,0 +1,3 @@ +{ + "targets": { "browsers": "ie 6" } +} diff --git a/packages/babel-standalone/test/babel.js b/packages/babel-standalone/test/babel.js index 32fd928921..6b4085a0d8 100644 --- a/packages/babel-standalone/test/babel.js +++ b/packages/babel-standalone/test/babel.js @@ -117,7 +117,7 @@ const require = createRequire(import.meta.url); it("works w/o targets", () => { const output = Babel.transform("const a = 1;", { sourceType: "script", - presets: ["env"], + presets: [["env", { targets: { browsers: "ie 6" } }]], }).code; expect(output).toBe("var a = 1;"); }); @@ -160,7 +160,7 @@ const require = createRequire(import.meta.url); it("uses transform-new-targets plugin", () => { const output = Babel.transform("function Foo() {new.target}", { sourceType: "script", - presets: ["env"], + presets: [["env", { targets: { browsers: "ie 6" } }]], }).code; expect(output).toBe( "function Foo() {\n this instanceof Foo ? this.constructor : void 0;\n}",