parse-community / parse-server-example

Example of Parse Server using the express framework.
http://parseplatform.org
1.89k stars 5.44k forks source link

Error [ERR_REQUIRE_ESM]: require() of ES Module #459

Open farhanhu87 opened 3 months ago

farhanhu87 commented 3 months ago

Hi Team,

I am facing below error when i run "node index.js"

warn: DeprecationWarning: The Parse Server option 'allowClientClassCreation' default will change to 'false' in a future version. warn: DeprecationWarning: The Parse Server option 'allowExpiredAuthDataToken' default will change to 'false' in a future version. warn: DeprecationWarning: The Parse Server option 'encodeParseObjectInCloudFunction' default will change to 'true' in a future version. Error [ERR_REQUIRE_ESM]: require() of ES Module /home/farhan/parse-server-example/cloud/main.js from /home/farhan/parse-server-example/node_modules/parse-server/lib/ParseServer.js not supported. main.js is treated as an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which declares all .js files in that package scope as ES modules. Instead rename main.js to end in .cjs, change the requiring code to use dynamic import() which is available in all CommonJS modules, or change "type": "module" to "type": "commonjs" in /home/farhan/parse-server-example/package.json to treat all .js files as CommonJS (using .mjs for all ES modules instead).

at ParseServer.start (/home/farhan/parse-server-example/node_modules/parse-server/lib/ParseServer.js:146:13)
at async file:///home/farhan/parse-server-example/index.js:36:3 {

code: 'ERR_REQUIRE_ESM' } /home/farhan/parse-server-example/node_modules/parse-server/lib/ParseServer.js:146 require(path.resolve(process.cwd(), cloud)); ^

Error [ERR_REQUIRE_ESM]: require() of ES Module /home/farhan/parse-server-example/cloud/main.js from /home/farhan/parse-server-example/node_modules/parse-server/lib/ParseServer.js not supported. main.js is treated as an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which declares all .js files in that package scope as ES modules. Instead rename main.js to end in .cjs, change the requiring code to use dynamic import() which is available in all CommonJS modules, or change "type": "module" to "type": "commonjs" in /home/farhan/parse-server-example/package.json to treat all .js files as CommonJS (using .mjs for all ES modules instead).

at ParseServer.start (/home/farhan/parse-server-example/node_modules/parse-server/lib/ParseServer.js:146:13)
at async file:///home/farhan/parse-server-example/index.js:36:3 {

code: 'ERR_REQUIRE_ESM' }

parse-github-assistant[bot] commented 3 months ago

Thanks for opening this issue!

dplewis commented 2 months ago

@mtrezza Looks like cloud folder is dynamically imported

https://github.com/parse-community/parse-server/blob/alpha/src/ParseServer.js#L187

mtrezza commented 2 months ago

Is this only an example repo issue or a parse server issue?

dplewis commented 2 months ago

@mtrezza You reopened an issue for this https://github.com/parse-community/parse-server/issues/7559