diff --git a/packages/core/parcel-bundler/src/builtins/prelude.js b/packages/core/parcel-bundler/src/builtins/prelude.js index 189d8cba73d..9dccee3e5b3 100644 --- a/packages/core/parcel-bundler/src/builtins/prelude.js +++ b/packages/core/parcel-bundler/src/builtins/prelude.js @@ -42,6 +42,7 @@ parcelRequire = (function (modules, cache, entry, globalName) { } localRequire.resolve = resolve; + localRequire.cache = {}; var module = cache[name] = new newRequire.Module(name); diff --git a/packages/core/parcel-bundler/test/integration/node_require_cache/main.js b/packages/core/parcel-bundler/test/integration/node_require_cache/main.js new file mode 100644 index 00000000000..a16716400e0 --- /dev/null +++ b/packages/core/parcel-bundler/test/integration/node_require_cache/main.js @@ -0,0 +1 @@ +Object.keys(require.cache); diff --git a/packages/core/parcel-bundler/test/javascript.js b/packages/core/parcel-bundler/test/javascript.js index cc60c14010d..aef22a52c9b 100644 --- a/packages/core/parcel-bundler/test/javascript.js +++ b/packages/core/parcel-bundler/test/javascript.js @@ -1392,4 +1392,15 @@ describe('javascript', function() { let file = await fs.readFile(__dirname + '/dist/index.js', 'utf8'); assert(!file.includes('OptionsType')); }); + + it('should stub require.cache', async function() { + let b = await bundle( + __dirname + '/integration/node_require_cache/main.js', + { + target: 'node' + } + ); + + await run(b); + }); });