From 39ba1ff300a5c9448ccd40a50a017e7f24e5cd56 Mon Sep 17 00:00:00 2001 From: overlookmotel Date: Mon, 9 Aug 2021 08:14:52 +0100 Subject: [PATCH] Reduce stat calls in register (#13654) --- packages/babel-register/src/node.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/babel-register/src/node.js b/packages/babel-register/src/node.js index de9e0db5df..6d627a6574 100644 --- a/packages/babel-register/src/node.js +++ b/packages/babel-register/src/node.js @@ -56,9 +56,13 @@ function compile(code, filename) { if (env) cacheKey += `:${env}`; - let cached = cache && cache[cacheKey]; + let cached, fileMtime; + if (cache) { + cached = cache[cacheKey]; + fileMtime = mtime(filename); + } - if (!cached || cached.mtime !== mtime(filename)) { + if (!cached || cached.mtime !== fileMtime) { cached = babel.transform(code, { ...opts, sourceMaps: opts.sourceMaps === undefined ? "both" : opts.sourceMaps, @@ -67,7 +71,7 @@ function compile(code, filename) { if (cache) { cache[cacheKey] = cached; - cached.mtime = mtime(filename); + cached.mtime = fileMtime; registerCache.setDirty(); } }