From 55239e01cc474ee3a70a55c117bb6aa35baf12d1 Mon Sep 17 00:00:00 2001 From: Jacob Hilker Date: Thu, 27 May 2021 18:48:28 -0400 Subject: [PATCH 1/2] Worker: Babel ignore node_modules by deafult; minor babel transform perf improvements --- src/Worker.js | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/Worker.js b/src/Worker.js index 0f4f36b1..051c7052 100644 --- a/src/Worker.js +++ b/src/Worker.js @@ -52,6 +52,8 @@ function prepareJscodeshift(options) { } function setup(tr, babel) { + let babelRegister; + if (babel === 'babel') { const presets = []; if (presetEnv) { @@ -66,19 +68,24 @@ function setup(tr, babel) { require('@babel/preset-flow').default ); - require('@babel/register')({ + const plugins = [ + require('@babel/plugin-proposal-class-properties').default, + require('@babel/plugin-proposal-nullish-coalescing-operator').default, + require('@babel/plugin-proposal-optional-chaining').default, + require('@babel/plugin-transform-modules-commonjs').default, + ]; + + babelRegister = require('@babel/register'); + + babelRegister({ babelrc: false, presets, - plugins: [ - require('@babel/plugin-proposal-class-properties').default, - require('@babel/plugin-proposal-nullish-coalescing-operator').default, - require('@babel/plugin-proposal-optional-chaining').default, - require('@babel/plugin-transform-modules-commonjs').default, - ], + plugins, extensions: [...DEFAULT_EXTENSIONS, '.ts', '.tsx'], // By default, babel register only compiles things inside the current working directory. // https://github.com/babel/babel/blob/2a4f16236656178e84b05b8915aab9261c55782c/packages/babel-register/src/node.js#L140-L157 ignore: [ + /\/node_modules\//, // Ignore parser related files /@babel\/parser/, /\/flow-parser\//, @@ -89,6 +96,11 @@ function setup(tr, babel) { } const module = require(tr); + + if (babelRegister) { + babelRegister.revert(); + } + transform = typeof module.default === 'function' ? module.default : module; From 0764677cefb3f34598fe2fa4478daabb95657258 Mon Sep 17 00:00:00 2001 From: Jacob Hilker Date: Fri, 28 May 2021 13:05:14 -0400 Subject: [PATCH 2/2] Worker: Remove babel/register revert call for dynamic require support --- src/Worker.js | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/Worker.js b/src/Worker.js index 051c7052..36ba414b 100644 --- a/src/Worker.js +++ b/src/Worker.js @@ -52,8 +52,6 @@ function prepareJscodeshift(options) { } function setup(tr, babel) { - let babelRegister; - if (babel === 'babel') { const presets = []; if (presetEnv) { @@ -75,9 +73,7 @@ function setup(tr, babel) { require('@babel/plugin-transform-modules-commonjs').default, ]; - babelRegister = require('@babel/register'); - - babelRegister({ + require('@babel/register')({ babelrc: false, presets, plugins, @@ -96,11 +92,6 @@ function setup(tr, babel) { } const module = require(tr); - - if (babelRegister) { - babelRegister.revert(); - } - transform = typeof module.default === 'function' ? module.default : module;