Import Issues in Next.js 14 with Server Actions
Problem Description
An import issue has been identified in Next.js 14 when using Server Actions. Although the project functions using memoryDriver, import errors are observed in the console when running the project. Even when recreating the issue in a new empty Next.js 14 template with App Router, import issues persist in the console, although it works at least using memoryDriver.
A minimal reproducible example has been provided in StackBlitz.
Steps to Reproduce the Problem
- Clone the repository bento-nextjs.
- Run
npm installto install the dependencies. - Run
npm run devto start the development server.
Console Output
Critical dependency: the request of a dependency is an expression
Import trace for requested module:
./node_modules/@poppinss/utils/build/index.js
./node_modules/bentocache/build/index.js
./bentocache.ts
./actions/counter.ts
./app/page.tsx
Project Dependencies
{
"name": "bento-nextjs",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"bentocache": "^1.0.0-beta.8",
"next": "14.2.0",
"react": "^18",
"react-dom": "^18"
},
"devDependencies": {
"@types/node": "^20",
"@types/react": "^18",
"@types/react-dom": "^18",
"eslint": "^8",
"eslint-config-next": "14.2.0",
"postcss": "^8",
"tailwindcss": "^3.4.1",
"typescript": "^5"
}
}
Minimal Reproducible Example
The minimal reproducible example can be found in the provided StackBlitz.
Additional Information
Apparently, the import issue might be related to the usage of @poppinss/utils.
Any guidance or solution to address these import issues in Next.js 14 would be appreciated.
Thank you for your attention to this matter!
Sincerely, Valentin
Hey. Thanks for the feedback
So, this is a problem with Next and more specifically Webpack. Here https://github.com/poppinss/utils/blob/develop/src/fs_import_all.ts#L47 we're using a dynamic await import, so with a variable. And webpack complains that it can't statically analyze what's imported.
So I would recommend two solutions:
- Ignore and silence errors. As recommended and demonstrated by Typeorm here: https://typeorm.io/faq#how-to-use-webpack-for-the-backend. You could adapt the
FilterWarningplugin to ignore this specific error - Use Turbopack. By testing on your repro, the error no longer appears when used with turbopack. I am not sure if this is a good advice, I am not using next nor turbopack, so I am not sure of the current state of Turbopack. But, the latest news from Next announces that 99.8% of tests passed with Turbopack, so I think it's pretty stable.
There's the /* webpackIgnore */ ( https://webpack.js.org/api/module-methods/#webpackignore ) solution that could be applied, but I'm not sure I want to do it as Next will be migrating to Turbopack very soon. You can use a patch to use this solution if you prefer
Let me know if it sounds good to you!
Hello. I faced the same issue since some months, and just ignored it until today.
I was using Bentocache to cache (in-memory) avatars URLs.
I'm now upgrading to Next Auth v5, and everything broke.
Got this error:
Import trace for requested module: node:fs/promises ./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js ./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js ./src/config/bentocache.ts ./src/config/Auth/authOptions.ts ./src/components/layouts/navbar/NavbarLoginButton.tsx
node:path Module build failed: UnhandledSchemeError: Reading from "node:path" is not handled by plugins (Unhandled scheme). Webpack supports "data:" and "file:" URIs by default. You may need an additional plugin to handle "node:" URIs. at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/> [email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
Tried to patch it like this:
// next.config.js
/* v8 ignore start */
// Stryker disable all
// @ts-check
const { webpack } = require('next/dist/compiled/webpack/webpack');
const { withContentlayer } = require('next-contentlayer');
const withBundleAnalyzer = require('@next/bundle-analyzer')({
enabled: process.env.ANALYZE === 'true'
});
const ignoreBuildErrors = process.env.IGNORE_BUILD_ERRORS === 'true';
const ignoreEslintDuringBuilds = process.env.IGNORE_ESLINT_DURING_BUILDS === 'true';
/** @type {import('next').NextConfig} */
const nextConfig = {
// eslint-disable-next-line require-await
async redirects() {
return [
/* eslint-disable perfectionist/sort-objects */
{
source: '/:lng/lp',
destination: '/:lng/lp/sign-up',
permanent: true
},
{
source: '/lp',
destination: '/lp/sign-up',
permanent: true
}
/* eslint-enable perfectionist/sort-objects */
];
},
// * ... here!
webpack: (config) => {
config.plugins.push(
new webpack.NormalModuleReplacementPlugin(/node:/, (resource) => {
resource.request = resource.request.replace(/^node:/, '');
})
);
return config;
},
eslint: {
ignoreDuringBuilds: ignoreEslintDuringBuilds
},
images: {
domains: ['cdn.discordapp.com']
},
typescript: {
ignoreBuildErrors
},
reactStrictMode: true,
swcMinify: true
};
module.exports = withBundleAnalyzer(withContentlayer(nextConfig));
// Stryker restore all
/* v8 ignore stop */
See also: https://stackoverflow.com/questions/76500464/issues-while-using-gradio-client-in-next-js/76522223#76522223
Results in:
Generated 97 documents in .contentlayer Failed to compile.
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js Module not found: Can't resolve 'fs/promises'
https://nextjs.org/docs/messages/module-not-found
Import trace for requested module: ./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js ./src/config/bentocache.ts ./src/config/Auth/authOptions.ts ./src/components/layouts/navbar/NavbarLoginButton.tsx
Build failed because of webpack errors
EDIT:
Reproducible from here https://github.com/Tirraa/dashboard_rtm/commit/49f153fb2577af487684e2e179797746f7587308
Does it bring up more meaningful hints?
EDIT 2: Exhaustive error message before trying to use the Webpack tricks exposed above.
node:buffer
Module build failed: UnhandledSchemeError: Reading from "node:buffer" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:buffer
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/config/Auth/authOptions.ts
./src/components/layouts/navbar/NavbarLoginButton.tsx
node:crypto
Module build failed: UnhandledSchemeError: Reading from "node:crypto" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:crypto
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/config/Auth/authOptions.ts
./src/components/layouts/navbar/NavbarLoginButton.tsx
node:events
Module build failed: UnhandledSchemeError: Reading from "node:events" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Hook.CALL_ASYNC_DELEGATE [as _callAsync] (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:26012)
at Object.processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
Import trace for requested module:
node:events
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/config/Auth/authOptions.ts
./src/components/layouts/navbar/NavbarLoginButton.tsx
node:fs/promises
Module build failed: UnhandledSchemeError: Reading from "node:fs/promises" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:fs/promises
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/config/Auth/authOptions.ts
./src/components/layouts/navbar/NavbarLoginButton.tsx
node:path
Module build failed: UnhandledSchemeError: Reading from "node:path" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/dashboard_rtm/node_modules/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:path
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/config/Auth/authOptions.ts
./src/components/layouts/navbar/NavbarLoginButton.tsx
Built again from scratch a project with Next Auth v5.
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
Critical dependency: the request of a dependency is an expression
Import trace for requested module:
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/auth.ts
./src/app/api/[...nextauth]/route.ts
Failed to compile.
node:crypto
Module build failed: UnhandledSchemeError: Reading from "node:crypto" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:crypto
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/auth.ts
node:fs/promises
Module build failed: UnhandledSchemeError: Reading from "node:fs/promises" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:fs/promises
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/auth.ts
node:path
Module build failed: UnhandledSchemeError: Reading from "node:path" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Object.processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
at NormalModule.needBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:407670)
Import trace for requested module:
node:path
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/auth.ts
node:url
Module build failed: UnhandledSchemeError: Reading from "node:url" is not handled by plugins (Unhandled scheme).
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "node:" URIs.
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401757
at Hook.eval [as callAsync] (eval at create (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:28858), <anonymous>:6:1)
at Hook.CALL_ASYNC_DELEGATE [as _callAsync] (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:15:26012)
at Object.processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401682)
at processResource (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)
at iteratePitchingLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)
at runLoaders (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)
at NormalModule._doBuild (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:401544)
at NormalModule.build (/home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:403572)
at /home/stan/Deliv/next-auth-v5-test/node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/next/dist/compiled/webpack/bundle5.js:30:82055
Import trace for requested module:
node:url
./node_modules/.pnpm/@[email protected]/node_modules/@poppinss/utils/build/index.js
./node_modules/.pnpm/[email protected][email protected]/node_modules/bentocache/build/index.js
./src/config/bentocache.ts
./src/auth.ts
./src/config/bentocache.ts
Dynamic Code Evaluation (e. g. 'eval', 'new Function', 'WebAssembly.compile') not allowed in Edge Runtime
Learn More: https://nextjs.org/docs/messages/edge-dynamic-code-evaluation
The error was caused by importing 'bentocache/build/index.js' in './src/config/bentocache.ts'.
Import trace for requested module:
./src/config/bentocache.ts
./src/auth.ts
./src/middleware.ts
Dynamic Code Evaluation (e. g. 'eval', 'new Function', 'WebAssembly.compile') not allowed in Edge Runtime Learn More: https://nextjs.org/docs/messages/edge-dynamic-code-evaluation
Interesting...
It seems that the unification of the API using auth in Auth.js (formerly Next Auth) v5 reveals issues in Edge Runtime with Bentocache (depending on Poppinss, which causes this issue).