nitro icon indicating copy to clipboard operation
nitro copied to clipboard

Nitro with `bun` preset crashes upon closing a SSE (Server-Sent Events) connection

Open Anoesj opened this issue 5 months ago • 0 comments

Environment


  • Operating System: Linux
  • Node Version: v20.12.2
  • Nuxt Version: 3.13.1
  • CLI Version: 3.13.1
  • Nitro Version: 2.9.7
  • Package Manager: [email protected]
  • Builder: -
  • User Config: compatibilityDate, devtools, nitro
  • Runtime Modules: -
  • Build Modules: -

Reproduction

https://github.com/Anoesj/nitro-bun-sse-issue

[!NOTE]
I could not create a reproduction in Stackblitz/CodeSandbox, as I couldn't figure out how to use Bun there. Therefore, I created a repo instead. Make sure to read the README for reproduction steps.

Describe the bug

I ran into some crashes while using SSE and I think it has something to do with Nitro preset bun. I'm using a Nuxt application built with Nitro preset bun. I tried building the app in two different ways to check for differences, but both builds behave the same way:

  1. Using NITRO_PRESET=bun bun --bun run build
  2. Using the nitro.preset setting in nuxt.config.ts set to bun

The crash occurs when a frontend closes an SSE connection with the Nuxt app. It only crashes when using the bun Nitro preset. With the node-server preset, no issues arise. Also, when running the Nuxt app with bun --bun run dev with the Nitro bun preset, this crash does not occur upon closing an SSE connection.

Additional context

Bun revision: 1.1.27+267afa293 Platform: Linux 6.8.0-40-generic x86_64 x86_64.

If this is a Nuxt issue, feel free to transfer the issue to the Nuxt repository.

Anoesj avatar Sep 09 '24 12:09 Anoesj