From 9c9bf179e5a1b715b3a696cdd338e62a944efd64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Fri, 9 Aug 2019 14:01:07 +0200 Subject: [PATCH 1/7] Warn on @babel/runtime version mismatch --- babel.config.js | 1 + package.json | 1 + .../src/helpers.js | 51 +++++++++++++++++++ .../src/index.js | 34 ++++++++++++- 4 files changed, 86 insertions(+), 1 deletion(-) diff --git a/babel.config.js b/babel.config.js index 82966a7f07ca..42667106d512 100644 --- a/babel.config.js +++ b/babel.config.js @@ -77,6 +77,7 @@ module.exports = function(api) { "@babel/proposal-object-rest-spread", { useBuiltIns: true, loose: true }, ], + "@babel/proposal-optional-chaining", // Explicitly use the lazy version of CommonJS modules. convertESM ? ["@babel/transform-modules-commonjs", { lazy: true }] : null, diff --git a/package.json b/package.json index a329e7667326..c68bb5f9d6f1 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "@babel/plugin-proposal-class-properties": "^7.4.4", "@babel/plugin-proposal-export-namespace-from": "^7.2.0", "@babel/plugin-proposal-numeric-separator": "^7.2.0", + "@babel/plugin-proposal-optional-chaining": "^7.2.0", "@babel/plugin-transform-modules-commonjs": "^7.4.4", "@babel/plugin-transform-runtime": "^7.4.4", "@babel/preset-env": "^7.4.5", diff --git a/packages/babel-plugin-transform-runtime/src/helpers.js b/packages/babel-plugin-transform-runtime/src/helpers.js index f99730dc9498..ab17f6f58991 100644 --- a/packages/babel-plugin-transform-runtime/src/helpers.js +++ b/packages/babel-plugin-transform-runtime/src/helpers.js @@ -32,6 +32,57 @@ export function hasMinVersion(minVersion, runtimeVersion) { ); } +export function verifyRuntimeVersion( + options, + moduleName, + runtimeVersion, + actualRuntimeVersion, +) { + if (!actualRuntimeVersion) return; + + const minActualVersion = semver.minVersion(actualRuntimeVersion).version; + const minVersion = semver.minVersion(runtimeVersion).version; + + if (minActualVersion === minVersion) return; + + const fixedOptions = JSON.stringify( + { + plugins: [ + [ + "@babel/plugin-transform-runtime", + { ...options, version: minActualVersion }, + ], + ], + }, + null, + 2, + ).replace(/^/gm, " ".repeat(2)); + + if (semver.gt(minActualVersion, minVersion)) { + console.warn( + `The installed version of "${moduleName}" (${actualRuntimeVersion}) is greater ` + + `than the version specified in "@babel/transform-runtime"'s options ` + + `(${options.version}). This difference won't cause any problem in runtime ` + + `functionality, but it will make your compiled code larger since Babel ` + + `can't rely on some new or modified helpers to be present in the installed ` + + `"${moduleName}". For this reason, some helpers will be inlined in your code ` + + `as if you weren't using "@babel/plugin-transform-runtime", leadng to bigger bundles.\n` + + `To fix this problem, you can specify the correct version in ` + + `"@babel/transform-runtime"'s options:\n\n${fixedOptions}`, + ); + } else { + console.warn( + `The installed version of "${moduleName}" (${actualRuntimeVersion}) is lower ` + + `than the version specified in "@babel/transform-runtime"'s options ` + + `(${options.version}). For this reason, Babel will assume that some helpers ` + + `are supported by the installed "${moduleName}" version, even if they ` + + `might not actually be present.\n` + + `To fix this problem, you must specify the correct version in ` + + `"@babel/transform-runtime"'s options:\n\n${fixedOptions}`, + ); + } +} + // Note: We can't use NodePath#couldBeBaseType because it doesn't support arrays. // Even if we added support for arrays, this package needs to be compatible with // ^7.0.0 so we can't rely on it. diff --git a/packages/babel-plugin-transform-runtime/src/index.js b/packages/babel-plugin-transform-runtime/src/index.js index 7e227a6f20a8..a0849177ae58 100644 --- a/packages/babel-plugin-transform-runtime/src/index.js +++ b/packages/babel-plugin-transform-runtime/src/index.js @@ -1,4 +1,5 @@ import path from "path"; +import fs from "fs"; import resolve from "resolve"; import { declare } from "@babel/helper-plugin-utils"; import { addDefault, isModule } from "@babel/helper-module-imports"; @@ -6,7 +7,7 @@ import { types as t } from "@babel/core"; import getCoreJS2Definitions from "./runtime-corejs2-definitions"; import getCoreJS3Definitions from "./runtime-corejs3-definitions"; -import { typeAnnotationToString } from "./helpers"; +import { typeAnnotationToString, verifyRuntimeVersion } from "./helpers"; function resolveAbsoluteRuntime(moduleName: string, dirname: string) { try { @@ -27,6 +28,30 @@ function resolveAbsoluteRuntime(moduleName: string, dirname: string) { } } +function resolveRuntimeVersion( + moduleName: string, + modulePath: string, + dirname: string, +) { + try { + const runtimeDir = path.dirname( + resolve.sync(`${modulePath}/package.json`, { + basedir: dirname, + }), + ); + const pkgFilename = path.resolve(runtimeDir, "../../../package.json"); + const pkg = JSON.parse(fs.readFileSync(pkgFilename, "utf8")); + + return ( + pkg.dependencies?.[moduleName] || + pkg.devDependencies?.[moduleName] || + pkg.peerDependencies?.[moduleName] + ); + } catch {} + + return null; +} + function supportsStaticESM(caller) { return !!(caller && caller.supportsStaticESM); } @@ -189,6 +214,13 @@ export default declare((api, options, dirname) => { ); } + verifyRuntimeVersion( + options, + moduleName, + runtimeVersion, + resolveRuntimeVersion(moduleName, modulePath, dirname), + ); + return { name: "transform-runtime", From ca20aadb4f31c652e900a5843f6f8a24c38880b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Mon, 12 Aug 2019 23:18:40 +0200 Subject: [PATCH 2/7] Silence warnings in unelated tests --- .../test/node_modules/@babel/runtime/package.json | 3 +++ .../test/node_modules/README.md | 1 + .../test/fixtures/absoluteRuntime/relative/output.js | 2 +- .../test/fixtures/absoluteRuntime/true/output.js | 2 +- .../test/node_modules/@babel/runtime-corejs2/package.json | 3 +++ .../test/node_modules/@babel/runtime-corejs3/package.json | 3 +++ .../test/node_modules/@babel/runtime/package.json | 3 +++ .../babel-plugin-transform-runtime/test/node_modules/README.md | 1 + 8 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 packages/babel-plugin-transform-modules-commonjs/test/node_modules/@babel/runtime/package.json create mode 100644 packages/babel-plugin-transform-modules-commonjs/test/node_modules/README.md create mode 100644 packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs2/package.json create mode 100644 packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs3/package.json create mode 100644 packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime/package.json create mode 100644 packages/babel-plugin-transform-runtime/test/node_modules/README.md diff --git a/packages/babel-plugin-transform-modules-commonjs/test/node_modules/@babel/runtime/package.json b/packages/babel-plugin-transform-modules-commonjs/test/node_modules/@babel/runtime/package.json new file mode 100644 index 000000000000..20f5d5743e7b --- /dev/null +++ b/packages/babel-plugin-transform-modules-commonjs/test/node_modules/@babel/runtime/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.0.0-beta.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-modules-commonjs/test/node_modules/README.md b/packages/babel-plugin-transform-modules-commonjs/test/node_modules/README.md new file mode 100644 index 000000000000..1de391fdf0b2 --- /dev/null +++ b/packages/babel-plugin-transform-modules-commonjs/test/node_modules/README.md @@ -0,0 +1 @@ +Use a fixed version of @babel/runtime, to avoid warnings about mismatched versions diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js index e783188c9e48..193734cbcf5f 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js @@ -1,4 +1,4 @@ -var _classCallCheck = require("/packages/babel-plugin-transform-runtime/node_modules/@babel/runtime/helpers/classCallCheck"); +var _classCallCheck = require("/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime/helpers/classCallCheck"); let Foo = function Foo() { "use strict"; diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js index e783188c9e48..193734cbcf5f 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js @@ -1,4 +1,4 @@ -var _classCallCheck = require("/packages/babel-plugin-transform-runtime/node_modules/@babel/runtime/helpers/classCallCheck"); +var _classCallCheck = require("/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime/helpers/classCallCheck"); let Foo = function Foo() { "use strict"; diff --git a/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs2/package.json b/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs2/package.json new file mode 100644 index 000000000000..20f5d5743e7b --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs2/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.0.0-beta.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs3/package.json b/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs3/package.json new file mode 100644 index 000000000000..20f5d5743e7b --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime-corejs3/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.0.0-beta.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime/package.json b/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime/package.json new file mode 100644 index 000000000000..20f5d5743e7b --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/node_modules/@babel/runtime/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.0.0-beta.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/node_modules/README.md b/packages/babel-plugin-transform-runtime/test/node_modules/README.md new file mode 100644 index 000000000000..1de391fdf0b2 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/node_modules/README.md @@ -0,0 +1 @@ +Use a fixed version of @babel/runtime, to avoid warnings about mismatched versions From fa5c79acedf0a99ffb6c3d384c6524f9b182aff8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Mon, 12 Aug 2019 23:19:34 +0200 Subject: [PATCH 3/7] Test version warnings --- .../version-warning/greater/expected-log.txt | 14 ++++++++++++++ .../test/fixtures/version-warning/greater/input.js | 1 + .../node_modules/@babel/runtime/package.json | 3 +++ .../fixtures/version-warning/greater/options.json | 3 +++ .../fixtures/version-warning/greater/output.js | 1 + .../fixtures/version-warning/greater/package.json | 5 +++++ .../version-warning/lower/expected-log.txt | 14 ++++++++++++++ .../test/fixtures/version-warning/lower/input.js | 1 + .../lower/node_modules/@babel/runtime/package.json | 3 +++ .../fixtures/version-warning/lower/options.json | 3 +++ .../test/fixtures/version-warning/lower/output.js | 1 + .../fixtures/version-warning/lower/package.json | 5 +++++ 12 files changed, 54 insertions(+) create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/input.js create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/node_modules/@babel/runtime/package.json create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/output.js create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/package.json create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/input.js create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/node_modules/@babel/runtime/package.json create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/output.js create mode 100644 packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/package.json diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt new file mode 100644 index 000000000000..f812e9da9e69 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt @@ -0,0 +1,14 @@ +>>>>>> [console.warn] <<<<<< +The installed version of "@babel/runtime" (^7.3.0) is greater than the version specified in "@babel/transform-runtime"'s options (7.2.0). This difference won't cause any problem in runtime functionality, but it will make your compiled code larger since Babel can't rely on some new or modified helpers to be present in the installed "@babel/runtime". For this reason, some helpers will be inlined in your code as if you weren't using "@babel/plugin-transform-runtime", leadng to bigger bundles. +To fix this problem, you can specify the correct version in "@babel/transform-runtime"'s options: + + { + "plugins": [ + [ + "@babel/plugin-transform-runtime", + { + "version": "7.3.0" + } + ] + ] + } diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/input.js b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/input.js new file mode 100644 index 000000000000..1c8a0e797620 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/input.js @@ -0,0 +1 @@ +; \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/node_modules/@babel/runtime/package.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/node_modules/@babel/runtime/package.json new file mode 100644 index 000000000000..f7dc274119bb --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/node_modules/@babel/runtime/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.4.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json new file mode 100644 index 000000000000..d30af785c0af --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json @@ -0,0 +1,3 @@ +{ + "plugins": [["transform-runtime", { "version": "7.2.0" }]] +} diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/output.js new file mode 100644 index 000000000000..092bc2b04126 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/output.js @@ -0,0 +1 @@ +; diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/package.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/package.json new file mode 100644 index 000000000000..f0ae756ec454 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "@babel/runtime": "^7.3.0" + } +} diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt new file mode 100644 index 000000000000..72ff2686ff1b --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt @@ -0,0 +1,14 @@ +>>>>>> [console.warn] <<<<<< +The installed version of "@babel/runtime" (^7.3.0) is lower than the version specified in "@babel/transform-runtime"'s options (7.5.0). For this reason, Babel will assume that some helpers are supported by the installed "@babel/runtime" version, even if they might not actually be present. +To fix this problem, you must specify the correct version in "@babel/transform-runtime"'s options: + + { + "plugins": [ + [ + "@babel/plugin-transform-runtime", + { + "version": "7.3.0" + } + ] + ] + } \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/input.js b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/input.js new file mode 100644 index 000000000000..1c8a0e797620 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/input.js @@ -0,0 +1 @@ +; \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/node_modules/@babel/runtime/package.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/node_modules/@babel/runtime/package.json new file mode 100644 index 000000000000..f7dc274119bb --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/node_modules/@babel/runtime/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.4.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json new file mode 100644 index 000000000000..0f722b38b5ad --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json @@ -0,0 +1,3 @@ +{ + "plugins": [["@babel/plugin-transform-runtime", { "version": "7.5.0" }]] +} diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/output.js new file mode 100644 index 000000000000..092bc2b04126 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/output.js @@ -0,0 +1 @@ +; diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/package.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/package.json new file mode 100644 index 000000000000..f0ae756ec454 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "@babel/runtime": "^7.3.0" + } +} From 1ec175cc834babe2dbdf715c116b559c2ec968f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Mon, 12 Aug 2019 23:23:18 +0200 Subject: [PATCH 4/7] Silence other warning --- .../regression/T7041/node_modules/@babel/runtime/package.json | 3 +++ .../test/fixtures/regression/T7041/node_modules/README.md | 1 + 2 files changed, 4 insertions(+) create mode 100644 packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/@babel/runtime/package.json create mode 100644 packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/README.md diff --git a/packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/@babel/runtime/package.json b/packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/@babel/runtime/package.json new file mode 100644 index 000000000000..20f5d5743e7b --- /dev/null +++ b/packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/@babel/runtime/package.json @@ -0,0 +1,3 @@ +{ + "version": "7.0.0-beta.0" +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/README.md b/packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/README.md new file mode 100644 index 000000000000..1de391fdf0b2 --- /dev/null +++ b/packages/babel-plugin-transform-regenerator/test/fixtures/regression/T7041/node_modules/README.md @@ -0,0 +1 @@ +Use a fixed version of @babel/runtime, to avoid warnings about mismatched versions From d247044c8cbd6ff79574cbf252917c2337b3a9c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Tue, 13 Aug 2019 00:06:16 +0200 Subject: [PATCH 5/7] Use correct runtime version --- .../babel-plugin-transform-runtime/scripts/build-dist.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/babel-plugin-transform-runtime/scripts/build-dist.js b/packages/babel-plugin-transform-runtime/scripts/build-dist.js index e36ef0c68b0a..5008175c372b 100644 --- a/packages/babel-plugin-transform-runtime/scripts/build-dist.js +++ b/packages/babel-plugin-transform-runtime/scripts/build-dist.js @@ -153,7 +153,14 @@ function buildHelper( return babel.transformFromAst(tree, null, { presets: [[require("@babel/preset-env"), { modules: false }]], plugins: [ - [transformRuntime, { corejs, useESModules: esm }], + [ + transformRuntime, + { + corejs, + useESModules: esm, + version: require("@babel/runtime/package.json").version, + }, + ], buildRuntimeRewritePlugin( runtimeName, path.relative(path.dirname(helperFilename), pkgDirname), From 3dbae24af14ff79aad9dc28ad365ed581ef355e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Tue, 13 Aug 2019 00:06:23 +0200 Subject: [PATCH 6/7] Update yarn.lock --- yarn.lock | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/yarn.lock b/yarn.lock index e9c8313a4122..4b19f9260560 100644 --- a/yarn.lock +++ b/yarn.lock @@ -317,6 +317,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" +"@babel/plugin-proposal-optional-chaining@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.2.0.tgz#ae454f4c21c6c2ce8cb2397dc332ae8b420c5441" + integrity sha512-ea3Q6edZC/55wEBVZAEz42v528VulyO0eir+7uky/sT4XRcdkWJcFi1aPtitTlwUzGnECWJNExWww1SStt+yWw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.2.0" + "@babel/plugin-proposal-unicode-property-regex@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz#501ffd9826c0b91da22690720722ac7cb1ca9c78" @@ -382,6 +390,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-optional-chaining@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.2.0.tgz#a59d6ae8c167e7608eaa443fda9fa8fa6bf21dff" + integrity sha512-HtGCtvp5Uq/jH/WNUPkK6b7rufnCPLLlDAFN7cmACoIjaOOiXxUt3SswU5loHqrhtqTsa/WoLQ1OQ1AGuZqaWA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-arrow-functions@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" From bb0a147fe2733957168f83e3d6ec50780675b9f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Wed, 14 Aug 2019 17:48:08 +0200 Subject: [PATCH 7/7] Fix rebase error --- .../test/fixtures/version-warning/greater/options.json | 1 + .../version-warning/greater/{expected-log.txt => stderr.txt} | 1 - .../test/fixtures/version-warning/lower/options.json | 1 + .../version-warning/lower/{expected-log.txt => stderr.txt} | 1 - 4 files changed, 2 insertions(+), 2 deletions(-) rename packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/{expected-log.txt => stderr.txt} (96%) rename packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/{expected-log.txt => stderr.txt} (94%) diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json index d30af785c0af..1fe21e4cb291 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/options.json @@ -1,3 +1,4 @@ { + "validateLogs": true, "plugins": [["transform-runtime", { "version": "7.2.0" }]] } diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/stderr.txt similarity index 96% rename from packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt rename to packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/stderr.txt index f812e9da9e69..8466f4c0fe74 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/expected-log.txt +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/greater/stderr.txt @@ -1,4 +1,3 @@ ->>>>>> [console.warn] <<<<<< The installed version of "@babel/runtime" (^7.3.0) is greater than the version specified in "@babel/transform-runtime"'s options (7.2.0). This difference won't cause any problem in runtime functionality, but it will make your compiled code larger since Babel can't rely on some new or modified helpers to be present in the installed "@babel/runtime". For this reason, some helpers will be inlined in your code as if you weren't using "@babel/plugin-transform-runtime", leadng to bigger bundles. To fix this problem, you can specify the correct version in "@babel/transform-runtime"'s options: diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json index 0f722b38b5ad..d7672897a2c8 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/options.json @@ -1,3 +1,4 @@ { + "validateLogs": true, "plugins": [["@babel/plugin-transform-runtime", { "version": "7.5.0" }]] } diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/stderr.txt similarity index 94% rename from packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt rename to packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/stderr.txt index 72ff2686ff1b..464bf9ce48d6 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/expected-log.txt +++ b/packages/babel-plugin-transform-runtime/test/fixtures/version-warning/lower/stderr.txt @@ -1,4 +1,3 @@ ->>>>>> [console.warn] <<<<<< The installed version of "@babel/runtime" (^7.3.0) is lower than the version specified in "@babel/transform-runtime"'s options (7.5.0). For this reason, Babel will assume that some helpers are supported by the installed "@babel/runtime" version, even if they might not actually be present. To fix this problem, you must specify the correct version in "@babel/transform-runtime"'s options: