fix: Bun build failes in docker with "Export 'toNodeHandler' not found" when using Nuxt Devtools alpha.9 and @nuxt/image and special tsconfig
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- bun, docker, nuxtjs, typescript
- 领域
- build-system, devtools
调研方向
克隆链接的 NuxtDevToolsMinimal 复现项目,并运行 docker build --no-cache . 以确认 bun run build 处的失败。比较列出的 @nuxt/devtools 版本,并检查 package.json、nuxt.config.ts、旧版 tsconfig.json、Dockerfile 和 postinstall 设置。完成标准是 Docker 构建在没有 toNodeHandler 导出错误的情况下完成。
由索引模型根据 Issue 内容生成。
描述
🐛 The bug
Bug/Error:
I found a very specific interaction bug in @nuxt/devtools Version 4.0.0-alpha.8 and 4.0.0-alpha.9 (it doesn't happen in 4.0.0-alpha.7). This is quite an edge case.
The docker build fails at bun run build with the error:
ERROR Export named 'toNodeHandler' not found in module '/app/node_modules/h3/dist/index.cjs'.
at <parse> (:0)
at processTicksAndRejections (native:7:39)
error: script "build" exited with code 1
🛠️ To reproduce
https://github.com/DragonFire7/NuxtDevToolsMinimal
🌈 Expected behavior
Minimal reproduction:
I built a minimal reproduction here: https://github.com/DragonFire7/NuxtDevToolsMinimal
- Clone the repository.
- Run
docker build --no-cache . - The build crashes at the
bun run buildstep.
Expected bahavior:
No errors when running the docker build
ℹ️ Additional context
Description/Details:
The bug happens when building with Docker and Bun. It does not happen locally on my Windows machine.
It only occurs when all of the following criteria are met:
package.json:@nuxt/imageand@nuxt/devtools(with one of the mentioned versions) are in thedevDependencies. Thebuildandpostinstallscripts must also be present.nuxt.config.ts: A basic config utilizing the Nitro preset for Bun.tsconfig.json: This is why I call it an edge case. It only happens when the project came from Nuxt 3 and still uses the legacy Nuxt 3 tsconfig format. When updating my project's config to the new Nuxt 4 tsconfig format, everything works perfectly again.Dockerfile: The Dockerfile is pretty standard and only shows the building stage, since the error already occurs there.
What I found through trial and error:
- Without the
postinstallscript, the types don't seem to be generated while building, thus thetsconfig.jsondoesn't have any effect and the build succeeds. - Without
@nuxt/image, no error occurs. The issue seems to be introduced by an interaction between the two modules during the build process. - Switching the base image from
oven/bun:1-alpinetooven/bun:1-slimoroven/bun:1didn't have any effect.
Since this is very much an edge case tied to an outdated tsconfig.json, it is low priority in my opinion. However, I wanted to report it in case it helps others searching for a solution
- 主要语言
- TypeScript
- 星标
- 3.3k
- 派生
- 217
- 平均合并
- 1 天 4 小时
- 30 天内合并 PR
- 21
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
nuxt/devtools 的其他 Issue
-
fix: Inspect panel styles break when host page sets a custom html font-size (rem-based units)可能重新可做 关联的 PR 已关闭且未合并。 未关闭bug
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
难度 3/5 半天 新手友好度 42/100
维护者通常 1 天内回复
-
bug
难度 3/5 1-2 天 新手友好度 65/100
维护者通常 1 天内回复
-
bug
难度 3/5 1-2 天 新手友好度 65/100
nuxt/devtools#1100 · 2 个 reaction ·
维护者通常 1 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 74/100
AvaProtocol/ava-sdk-js#276 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 75/100
apollographql/apollo-client#13493 ·
维护者通常 1 天内回复
-
Custom hosts written as trailing-dot FQDNs (`host.local.`) aren't detected as local backends可能已有人在做 @roboomp 今天认领。 未关闭bug prio:p2 providers triaged
难度 2/5 1-3 小时 新手友好度 82/100
can1357/oh-my-pi#15798 · 3 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
code-yeongyu/oh-my-openagent#10172 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
PDFCraftTool/pdfcraft#189 ·