Repository navigation
NodeJS imports breaking NextJS/Browser compat #1478
Copy link
Copy link
Open
Labels
Description
Activity
The same issue applies to Nuxt.js (Vite) builds:
ℹ vite v7.3.0 building client environment for production... 12:43:07 PM [12:43:21 PM] WARN [plugin vite:resolve] Module "node:os" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/log/output.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:21 PM] WARN [plugin vite:resolve] Module "node:os" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/log/renderer.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:21 PM] WARN [plugin vite:resolve] Module "node:os" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/log/logger.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/spec.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:os" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:fs" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/adaptors/vitepress.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/adaptors/vitepress.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:fs" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/extractor/extract.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/extractor/extract.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:fs" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/extractor/nodes/module.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:22 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/extractor/nodes/module.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:24 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/paka/extractor/path-utils.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:26 PM] WARN [plugin vite:resolve] Module "node:path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/path/operations/toRel.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:30 PM] WARN [plugin vite:resolve] Module "fs" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/tinyglobby@0.2.15/node_modules/tinyglobby/dist/index.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:30 PM] WARN [plugin vite:resolve] Module "path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/tinyglobby@0.2.15/node_modules/tinyglobby/dist/index.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:30 PM] WARN [plugin vite:resolve] Module "url" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/tinyglobby@0.2.15/node_modules/tinyglobby/dist/index.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:32 PM] WARN [plugin vite:resolve] Module "module" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/fdir@6.5.0_picomatch@4.0.3/node_modules/fdir/dist/index.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:32 PM] WARN [plugin vite:resolve] Module "path" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/fdir@6.5.0_picomatch@4.0.3/node_modules/fdir/dist/index.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:32 PM] WARN [plugin vite:resolve] Module "fs" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/fdir@6.5.0_picomatch@4.0.3/node_modules/fdir/dist/index.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:32 PM] WARN [plugin vite:resolve] Module "node:readline/promises" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/oak/lib/Prompter/Constructors/Process.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:32 PM] WARN [plugin vite:resolve] Module "node:process" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/oak/lib/KeyPress/KeyPress.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:32 PM] WARN [plugin vite:resolve] Module "node:readline" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/oak/lib/KeyPress/KeyPress.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:39 PM] WARN [plugin vite:resolve] Module "perf_hooks" has been externalized for browser compatibility, imported by "/Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@ts-morph+common@0.28.1/node_modules/@ts-morph/common/dist/typescript.js". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details. [12:43:44 PM] WARN node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/path/operations/toRel.js (29:34): "relative" is not exported by "__vite-browser-external", imported by "node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/path/operations/toRel.js". [12:43:44 PM] WARN node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js (39:30): "join" is not exported by "__vite-browser-external", imported by "node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js". [12:43:44 PM] WARN node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js (39:42): "tmpdir" is not exported by "__vite-browser-external", imported by "node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js". [12:43:44 PM] WARN node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js (63:30): "join" is not exported by "__vite-browser-external", imported by "node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js". [12:43:44 PM] WARN node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js (63:42): "tmpdir" is not exported by "__vite-browser-external", imported by "node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/builder.js". ℹ ✓ 5092 modules transformed. 12:43:44 PM ERROR ✗ Build failed in 36.77s 12:43:44 PM │ ■ Nuxt build error: RollupError: node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/spec.js (2:9): "join" is not exported by "__vite-browser-external", imported by "node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/spec.js". │ file: /Users/pascal/code/ips-hosting/frontend/node_modules/.pnpm/@wollybeard+kit@0.107.0_@effect+platform@0.93.8_effect@3.19.12__effect@3.19.12_zod@3.25.76/node_modules/@wollybeard/kit/build/fs/builder/spec.js:2:9 │ │ 1: import { Schema as S } from 'effect'; │ 2: import { join } from 'node:path'; │ ^ │ 3: import { Path } from '../path/_.js'; │ 4: /** │ ELIFECYCLE Command failed with exit code 1.Maybe the unjs ecosystem can be useful here: https://unjs.io/
They maintain a drop-in replacement for the Node.js path library: https://github.com/unjs/pathe@jasonkuhrt May I kindly ask if you have an estimate on whether this issue can be fixed?
Originally posted by @ogous in #1460