Changelog

oven-sh/bun · · 7 commits

MySQL fix and a few important runtime patches

MySQL adapter now negotiates legacy EOF correctly, with fixes for tagged template null bytes and hot-reload test flakiness.

MySQL adapter now negotiates server capabilities correctly (robobun6c65e77)

Bun.SQL now intersects its desired MySQL features with what the server actually advertises, instead of unconditionally requesting CLIENT_DEPRECATE_EOF. That fixes empty SELECT results against MySQL-compatible databases like StarRocks, TiDB, and SingleStore that still use the legacy EOF protocol.

Tagged template literals preserve embedded null bytes (robobune91fe3e)

The transpiler now uses a non-colliding error sentinel when iterating code points, so String.raw and template literals no longer corrupt \0 bytes. This closes a real data-loss bug and adds regression coverage for tagged, untagged, and embedded-null cases.

Hot-reload sourcemap tests were hardened against stderr buffering bugs (robobuna04817c)

The hot CLI test helper was refactored to preserve unprocessed stderr lines across reload cycles, preventing hangs caused by dropped buffered output. The test also switched to more memory-efficient comment spam generation for the stress case.

Other misc changes

  • Docs: corrected stale/incorrect code comments across many source files (alii7abe6c3)
  • Docs: clarified SQLite WAL sidecar cleanup behavior and fixed an inaccurate -shm description (robobun76f4f38, robobuna7e9abe)
  • Deflake: split Windows compile metadata invalid-version checks into concurrent cases (robobun256bba7)