diff --git a/lib/FileSystemInfo.js b/lib/FileSystemInfo.js index f8ceb98745f..225b3d2dc38 100644 --- a/lib/FileSystemInfo.js +++ b/lib/FileSystemInfo.js @@ -6,6 +6,7 @@ "use strict"; const { create: createResolver } = require("enhanced-resolve"); +const nodeModule = require("module"); const asyncLib = require("neo-async"); const AsyncQueue = require("./util/AsyncQueue"); const StackedCacheMap = require("./util/StackedCacheMap"); @@ -22,6 +23,8 @@ const processAsyncTree = require("./util/processAsyncTree"); const supportsEsm = +process.versions.modules >= 83; +const builtinModules = new Set(nodeModule.builtinModules); + let FS_ACCURACY = 2000; const EMPTY_SET = new Set(); @@ -1676,6 +1679,7 @@ class FileSystemInfo { // we should not track Node.js build dependencies if (dependency.startsWith("node:")) continue; + if (builtinModules.has(dependency)) continue; push({ type: RBDT_RESOLVE_ESM_FILE, diff --git a/test/BuildDependencies.longtest.js b/test/BuildDependencies.longtest.js index d1d451d7874..0624b1b0dd4 100644 --- a/test/BuildDependencies.longtest.js +++ b/test/BuildDependencies.longtest.js @@ -133,7 +133,7 @@ describe("BuildDependencies", () => { ); fs.writeFileSync( path.resolve(inputDirectory, "esm-async-dependency.mjs"), - 'import path from "node:path"; export default 0;' + 'import path from "node:path"; import vm from "vm"; export default 0;' ); await exec("0", { invalidBuildDependencies: true,