Upgrade Bun runtime to 1.4.0 - #829
Conversation
Bun 1.4.0 is the Zig-to-Rust rewrite that retargets Node compatibility at 26.3.0. The compiled binary embeds whatever `bun` resolves to, so the runtime Hunk ships is what this bump actually moves. Two things in 1.4 needed handling: - Workspaces now default to the isolated linker, which nests packages under node_modules/.bun/<name>@<version>/node_modules/<name>. simple-git-hooks' postinstall looks for its own package.json one directory too high in that layout and crashes `bun install`, so bunfig pins the hoisted layout Hunk has always installed with. Bun 1.3 accepts the same key, so contributors who have not upgraded are unaffected. - 1.4 folded the separate x64 `-baseline` builds into the single x64 runtime, so the `@oven/bun-*-baseline` packages are gone from the dependency tree. The `-baseline` compile targets still resolve, so build-bin keeps working and the pre-AVX guard in CI still means what it did before. nix/bun.lock.nix is regenerated from bun.lock by hand because bun2nix needs a Nix toolchain; every hash was verified against the registry's own integrity field. Verified under 1.4.0: format:check, lint, typecheck, deps:check, test:theme-contrast, test (3005 pass), test:integration (119 pass), test:tty-smoke (9 pass), build:npm, check:pack, and build:bin plus a run of the compiled binary. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Thfra6PZGRrYczWvBJ3hjY
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Greptile SummaryUpgrades the bundled Bun runtime and type definitions from 1.3.14 to 1.4.0 while preserving the existing hoisted dependency layout.
Confidence Score: 5/5The PR appears safe to merge with the Bun version, linker behavior, platform packages, CI workflows, and Nix dependency inputs updated consistently. No concrete changed-code failure remains: frozen installs use the committed lockfile, hoisted linking preserves the prior installation layout, baseline compile targets retain compatibility, and Nix CI verifies lock regeneration and package builds. Important Files Changed
Reviews (1): Last reviewed commit: "build: upgrade Bun to 1.4.0" | Re-trigger Greptile |
Upgrades the bundled Bun runtime from 1.3.14 to 1.4.0 across all build configurations and CI workflows.
Changes
package.jsonand all GitHub Actions workflows@types/buntype definitions to 1.4.0bun-darwin-x64-baseline,bun-linux-x64-baseline) in favor of unified platform buildsbun-freebsd-aarch64andbun-freebsd-x64bunfig.tomlto explicitly setlinker = "hoisted"to maintain the existing package installation layout, as Bun 1.4 defaults to an isolated linker that breakssimple-git-hookspostinstallRationale
Bun 1.4.0 provides Node 26 compatibility and platform fixes. The linker configuration change ensures the install process remains stable with the project's current dependencies.
https://claude.ai/code/session_01Thfra6PZGRrYczWvBJ3hjY