Bun(实验性)

Bun(实验性)

适用范围

使用本页面当:

  • 您想要最快的本地开发循环(bun + watch)
  • 您遇到 Bun 安装/补丁/生命周期脚本问题

目标:使用 Bun 运行此仓库(可选,不推荐用于 WhatsApp/Telegram) 而不偏离 pnpm 工作流。

⚠️ 不推荐用于网关运行时(WhatsApp/Telegram 错误)。生产环境使用 Node。

状态

  • Bun 是一个可选的本地运行时,用于直接运行 TypeScript(bun run …bun --watch …)。
  • pnpm 是构建的默认值,仍然完全支持(并由某些文档工具使用)。
  • Bun 不能使用 pnpm-lock.yaml 并将忽略它。

安装

默认:

bun install

注意:bun.lock/bun.lockb 被 gitignore,所以无论哪种方式都没有仓库变动。如果您想要无锁文件写入

bun install --no-save

构建 / 测试(Bun)

bun run build
bun run vitest run

Bun 生命周期脚本(默认阻止)

Bun 可能会阻止依赖项生命周期脚本,除非明确受信任(bun pm untrusted / bun pm trust)。 对于此仓库,通常被阻止的脚本不是必需的:

  • @whiskeysockets/baileys preinstall:检查 Node 主版本 >= 20(我们运行 Node 22+)。
  • protobufjs postinstall:发出关于不兼容版本方案的警告(无构建工件)。

如果您遇到需要这些脚本的真正运行时问题,请明确信任它们:

bun pm trust @whiskeysockets/baileys protobufjs

注意事项

  • 某些脚本仍然硬编码 pnpm(例如 docs:buildui:*protocol:check)。暂时通过 pnpm 运行这些脚本。