mirror of
https://github.com/hanzoai/next.js.git
synced 2026-09-24 17:00:51 +00:00
Currently acornjs has an issue with compiling undici, add undici
externalize, once it's resolved we can remove the externalization for it
```
You may need an additional loader to handle the result of these loaders.
| // 5. If object is not a default iterator object for interface,
| // then throw a TypeError.
> if (typeof this !== 'object' || this === null || !(#target in this)) {
| throw new TypeError(
| `'next' called on an object that does not implement interface ${name} Iterator.`
Import trace for requested module:
../../../../node_modules/.pnpm/[email protected].0/node_modules/undici/lib/web/fetch/util.js
../../../../node_modules/.pnpm/[email protected].0/node_modules/undici/lib/web/fetch/headers.js
../../../../node_modules/.pnpm/[email protected].0/node_modules/undici/index.js
./app/undici/page.js
```
Closes NEXT-3030
75 lines
1.8 KiB
Plaintext
75 lines
1.8 KiB
Plaintext
---
|
|
title: serverComponentsExternalPackages
|
|
description: Opt-out specific dependencies from the Server Components bundling and use native Node.js `require`.
|
|
---
|
|
|
|
Dependencies used inside [Server Components](/docs/app/building-your-application/rendering/server-components) and [Route Handlers](/docs/app/building-your-application/routing/route-handlers) will automatically be bundled by Next.js.
|
|
|
|
If a dependency is using Node.js specific features, you can choose to opt-out specific dependencies from the Server Components bundling and use native Node.js `require`.
|
|
|
|
```js filename="next.config.js"
|
|
/** @type {import('next').NextConfig} */
|
|
const nextConfig = {
|
|
experimental: {
|
|
serverComponentsExternalPackages: ['@acme/ui'],
|
|
},
|
|
}
|
|
|
|
module.exports = nextConfig
|
|
```
|
|
|
|
Next.js includes a [short list of popular packages](https://github.com/vercel/next.js/blob/canary/packages/next/src/lib/server-external-packages.json) that currently are working on compatibility and automatically opt-ed out:
|
|
|
|
- `@aws-sdk/client-s3`
|
|
- `@aws-sdk/s3-presigned-post`
|
|
- `@blockfrost/blockfrost-js`
|
|
- `@highlight-run/node`
|
|
- `@jpg-store/lucid-cardano`
|
|
- `@libsql/client`
|
|
- `@mikro-orm/core`
|
|
- `@mikro-orm/knex`
|
|
- `@prisma/client`
|
|
- `@react-pdf/renderer`
|
|
- `@sentry/profiling-node`
|
|
- `@swc/core`
|
|
- `argon2`
|
|
- `autoprefixer`
|
|
- `aws-crt`
|
|
- `bcrypt`
|
|
- `better-sqlite3`
|
|
- `canvas`
|
|
- `cpu-features`
|
|
- `cypress`
|
|
- `eslint`
|
|
- `express`
|
|
- `firebase-admin`
|
|
- `jest`
|
|
- `jsdom`
|
|
- `libsql`
|
|
- `mdx-bundler`
|
|
- `mongodb`
|
|
- `mongoose`
|
|
- `next-mdx-remote`
|
|
- `next-seo`
|
|
- `node-pty`
|
|
- `node-web-audio-api`
|
|
- `pg`
|
|
- `playwright`
|
|
- `postcss`
|
|
- `prettier`
|
|
- `prisma`
|
|
- `puppeteer-core`
|
|
- `puppeteer`
|
|
- `rimraf`
|
|
- `sharp`
|
|
- `shiki`
|
|
- `sqlite3`
|
|
- `tailwindcss`
|
|
- `ts-node`
|
|
- `typescript`
|
|
- `vscode-oniguruma`
|
|
- `undici`
|
|
- `webpack`
|
|
- `websocket`
|
|
- `zeromq`
|