Reproduction
Steps to reproduce the behavior:
npm install [email protected]$ make test
mocha --file test/server-setup.js test/{server-specs,specs}/*.test.js test/specs/**/*.test.js
ReferenceError: Cannot access 'fetch' before initialization
at Object.<anonymous> (/Users/wheresrhys/Projects/fetch-mock/node_modules/node-fetch/dist/index.cjs:3:28)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Module.require (internal/modules/cjs/loader.js:1019:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object.<anonymous> (/Users/wheresrhys/Projects/fetch-mock/src/server.js:9:10)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Module.require (internal/modules/cjs/loader.js:1019:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object.<anonymous> (/Users/wheresrhys/Projects/fetch-mock/test/server-setup.js:1:19)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Module.require (internal/modules/cjs/loader.js:1019:19)
at require (internal/modules/cjs/helpers.js:77:18)
at requireOrImport (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/esm-utils.js:15:12)
at Object.exports.loadFilesAsync (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/esm-utils.js:28:26)
at Mocha.loadFilesAsync (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/mocha.js:351:19)
at singleRun (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/cli/run-helpers.js:107:15)
at exports.runMocha (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/cli/run-helpers.js:144:11)
at Object.exports.handler (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/cli/run.js:306:11)
at Object.runCommand (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/node_modules/yargs/lib/command.js:242:26)
at Object.parseArgs [as _parseArgs] (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/node_modules/yargs/yargs.js:1096:28)
at Object.parse (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/node_modules/yargs/yargs.js:575:25)
at Object.exports.main (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/lib/cli/cli.js:68:6)
at Object.<anonymous> (/Users/wheresrhys/Projects/fetch-mock/node_modules/mocha/bin/mocha:133:29)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
at internal/main/run_main_module.js:18:47
make: *** [test] Error 1
index.cjs, fetch is indeed referenced early on, before it is declared'use strict';
exports = module.exports = fetch;
Expected behavior
In [email protected] this bundling problem does not occur
Your Environment
| software | version
| ---------------- | -------
| node-fetch | 3.0.0-beta.6
| node | 12.16.3
| npm | 6.14.4
| Operating System | MacOS mojave
This is fixed by 3.0.0-beta.6-exportfix (#836) . Just do npm i node-fetch@next to update.
Most helpful comment
This is fixed by
3.0.0-beta.6-exportfix(#836) . Just donpm i node-fetch@nextto update.