Infinite error loop when using new netlify-cli (Netlify Database)
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 42/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- deno, typescript, vite
- 领域
- cli
调研方向
使用提供的 liblove 仓库和 netlify.toml,通过 netlify dev 重现该循环。先从 dist/utils/command-helpers.js 和 dist/commands/main.js 中显示的错误路径开始,然后跟踪 Deno CLI 启动后的未处理失败。当命令只报告一次失败或能够恢复,而不是无限打印失败信息时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
Describe the bug
This is a new app, attempting to use the new Netlify Database, so I updated to version 26 of netlify-cli.
When running netlify dev, it builds the frontend app, launches the browser, then spews this in a tight loop thousands of times:
› Warning: Error: Netlify CLI has terminated unexpectedly.
›
› Please report this problem with reproduction steps at https://ntl.fyi/cli-error including the error details below.
›
This message repeats until I manage to kill the process.
Here is the log (with verbose --debug) just before the error starts repeating.
`netlify dev --debug` output
VITE v7.3.1 ready in 2566 ms
⠏ Waiting for #custom dev server to be ready on port 4200
[1G ➜ Local: http://localhost:4200/
➜ Network: use --host to expose
⠋ Waiting for #custom dev server to be ready on port 4200
✔ #custom dev server ready on port 4200
Build step duration: dev.command completed in 3630ms
2026-05-02T18:22:24.995Z router use '/' textParser
2026-05-02T18:22:24.997Z router:layer new '/'
2026-05-02T18:22:24.998Z router use '/' rawParser
2026-05-02T18:22:24.999Z router:layer new '/'
2026-05-02T18:22:24.999Z router use '/' formSubmissionHandler
2026-05-02T18:22:24.999Z router:layer new '/'
2026-05-02T18:22:24.999Z router use '/' loggingMiddleware
2026-05-02T18:22:24.999Z router:layer new '/'
2026-05-02T18:22:25.000Z router:route new '{*splat}'
2026-05-02T18:22:25.000Z router:layer new '{*splat}'
2026-05-02T18:22:25.000Z router:route acl {*splat}
2026-05-02T18:22:25.000Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route bind {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route checkout {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route connect {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route copy {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route delete {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route get {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route head {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route link {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route lock {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route m-search {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route merge {*splat}
2026-05-02T18:22:25.001Z router:layer new '/'
2026-05-02T18:22:25.001Z router:route mkactivity {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route mkcalendar {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route mkcol {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route move {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route notify {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route options {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route patch {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route post {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route propfind {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route proppatch {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route purge {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route put {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route query {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route rebind {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route report {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route search {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.002Z router:route source {*splat}
2026-05-02T18:22:25.002Z router:layer new '/'
2026-05-02T18:22:25.003Z router:route subscribe {*splat}
2026-05-02T18:22:25.003Z router:layer new '/'
2026-05-02T18:22:25.003Z router:route trace {*splat}
2026-05-02T18:22:25.003Z router:layer new '/'
2026-05-02T18:22:25.003Z router:route unbind {*splat}
2026-05-02T18:22:25.003Z router:layer new '/'
2026-05-02T18:22:25.003Z router:route unlink {*splat}
2026-05-02T18:22:25.003Z router:layer new '/'
2026-05-02T18:22:25.003Z router:route unlock {*splat}
2026-05-02T18:22:25.003Z router:layer new '/'
2026-05-02T18:22:25.003Z router:route unsubscribe {*splat}
2026-05-02T18:22:25.003Z router:layer new '/'
⬥ Functions server is listening on 53617
╭─────────────────────── ⬥ ────────────────────────╮
│ │
│ Local dev server ready: http://localhost:8888 │
│ │
╰───────────────────────────────────────────────────╯
Using global installation of Deno CLI
Local version of types is up-to-date: 69ea7663762a1800080069da
› Warning: Error: Netlify CLI has terminated unexpectedly.
›
› Please report this problem with reproduction steps at https://ntl.fyi/cli-error including the error details below.
›
› at toError (file:///Users/tcjr/Library/pnpm/global/5/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected]/node_modules/netlify-cli/dist/utils/command-helpers.js:144:16)
› at logError (file:///Users/tcjr/Library/pnpm/global/5/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected]/node_modules/netlify-cli/dist/utils/command-helpers.js:155:17)
› at process.<anonymous> (file:///Users/tcjr/Library/pnpm/global/5/.pnpm/[email protected]_@[email protected]_@[email protected][email protected][email protected]/node_modules/netlify-cli/dist/commands/main.js:71:9)
› at process.emit (node:events:509:28)
› at process._fatalException (node:internal/process/execution:159:25)
› at throwUnhandledRejectionsMode (node:internal/process/promises:394:5)
› at processPromiseRejections (node:internal/process/promises:475:17)
› at processTicksAndRejections (node:internal/process/task_queues:105:32)
› Warning: Error: Netlify CLI has terminated unexpectedly.
›
Then, the above errors appear tens of thousands of times.
The deployed app is working. See it here: https://liblove.netlify.app/
Steps to reproduce
- Clone the repo:
https://github.com/tcjr/liblove.git cd liblovepnpm installnetlify dev
Configuration
netlify.toml contents:
[build]
command = "pnpm build"
publish = "dist"
functions = "netlify/functions"
# Redirects all traffic to index.html for SPAs like Ember
[[redirects]]
from = "/*"
to = "/index.html"
status = 200
## Settings for Netlify Dev
## https://github.com/netlify/cli/blob/main/docs/netlify-dev.md#project-detection
[dev]
# We use the special value of '#custom' to let `netlify dev` know not to make
# any assumptions
framework = "#custom"
# `netlify dev` runs this command and waits for the targetPort below to be ready.
# In our Ember app, that happens when Vite does it's thing.
command = "pnpm run start:ember"
targetPort = 4200
## more info on configuring this file: https://ntl.fyi/file-based-build-config
Environment
System:
OS: macOS 15.7.4
CPU: (8) x64 Intel(R) Core(TM) i5-8257U CPU @ 1.40GHz
Memory: 28.11 MB / 8.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 24.3.0 - /Users/tcjr/.volta/tools/image/node/24.3.0/bin/node
Yarn: 4.1.0 - /Users/tcjr/.volta/tools/image/yarn/4.1.0/bin/yarn
npm: 11.6.1 - /Users/tcjr/.volta/tools/image/npm/11.6.1/bin/npm
pnpm: 10.12.4 - /Users/tcjr/Library/pnpm/pnpm
bun: 1.3.3 - /Users/tcjr/.bun/bin/bun
Deno: 2.7.14 - /Users/tcjr/.deno/bin/deno
Watchman: 2025.11.10.00 - /usr/local/bin/watchman
- 主要语言
- TypeScript
- 星标
- 1.9k
- 派生
- 481
- 平均合并
- 1 天 14 小时
- 30 天内合并 PR
- 70
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
netlify/cli 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
db-status.test fails if the database is disabled可能已有人在做 @paulleephp 于 4 天前认领。 未关闭type: bug
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
`client-ip` is not an IP address when `x-forwarded-for` holds a list or a port可能已有人在做 @Dev-next-gen 于 24 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
`netlify dev` with `--cwd` from outside the project: every function 500s with "module is not defined in ES module scope" (`detectZisiBuilder` passes a string to `readPackageUp`)可能已有人在做 @bsplatt92 于 65 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
area: command: deploy area: docs type: feature
难度 1/5 1 小时以内 新手友好度 88/100
netlify/cli#1984 · 19 条评论 · 3 个 reaction ·
维护者通常 1 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
phivk/rubiks-lab#33 ·
维护者通常 1 天内回复
-
BUG:Edit Album strips spaces from the password so albums with a leading/trailing space in the password can't be edited可能已有人在做 @ManyaJain111 今天认领。 未关闭bug enhancement possible-duplicate
难度 2/5 1-3 小时 新手友好度 77/100
AOSSIE-Org/PictoPy#1637 · 4 条评论 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
chaitin/MonkeyCode#1437 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
area:cards enhancement migration ready-for-agent
难度 2/5 1-3 小时 新手友好度 70/100
fil-donadoni/tolaria#6309 ·
维护者通常 1 天内回复