Open
Conversation
- Replace Node.js with Bun for all Docker stages - Update package.json scripts to use bun instead of tsx/pnpm - Update Helm values for staging/prod (bun commands, remove NODE_OPTIONS) - Update K8s manifests to use pre-built Bun-based images - Add setup-bun to PR checks workflow - Add bun.lock for dependency tracking Bun's AsyncLocalStorage implementation supports Sentry v10+ tracing.
- Add dotenv-expand to properly load .env variables in tests - Update tests/setup.ts to expand env variable interpolation - Fix graceful-shutdown tests for Bun's SIGTERM behavior (exit 143) - Fix workflow-runner tests for Bun's signal handling differences
- Remove pnpm setup and caching - Use bun install --frozen-lockfile - Use bun run for all scripts - Cache Bun dependencies using bun.lock hash - Fix mockUser type in rpc-preferences-routes.test.ts (add isAnonymous)
f0ba8da to
0ee673c
Compare
joelorzet
reviewed
Jan 21, 2026
| // Exit code 1 = system termination (SIGTERM) | ||
| expect(result.exitCode).toBe(1); | ||
| // Exit code 1 (Node.js) or 143 (Bun: 128 + SIGTERM) = system termination | ||
| expect([1, 143]).toContain(result.exitCode); |
There was a problem hiding this comment.
Shouldn’t we just rely on Bun’s exit code? Since we’re completely migrating the runner, I think this could potentially add edge cases.
joelorzet
reviewed
Jan 21, 2026
joelorzet
left a comment
There was a problem hiding this comment.
Honestly, it looks amazing. I’d definitely like to give it a try. That said, I’d prefer to do it in a separate environment to keep staging safe for a few days, since this might introduce unexpected issues as we continuously fetch updates from Vercel’s repo.
OleksandrUA
reviewed
Jan 24, 2026
| # ============================================================================= | ||
| # Stage 1: Dependencies (Bun for fast installs) | ||
| # ============================================================================= | ||
| FROM oven/bun:1.2-alpine AS deps |
There was a problem hiding this comment.
@suisuss I see 1.3 is available. Should we give newest version a try?
OleksandrUA
approved these changes
Jan 24, 2026
WIP/DEPLAYED: feat/KEEP-1241-bun-upgrade
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bun's AsyncLocalStorage implementation supports Sentry v10+ tracing.