- Bun 1.3은 프런트엔드와 백엔드 개발을 모두 지원하는 풀스택 JavaScript 런타임으로 진화한 대규모 릴리스
- React와 CSS 번들을 포함한 내장 프런트엔드 개발 서버, MySQL·PostgreSQL·SQLite·Redis 클라이언트 등 주요 기능이 통합됨
-
bun build를 통한 단일 실행 파일 컴파일과 코드 서명 및 크로스 컴파일 지원으로 배포 편의성 향상
- 패키지 관리자는 격리 설치(isolated installs), 보안 스캐너 API, 의존성 카탈로그(catalog) 등 대형 모노레포 친화 기능을 도입함
- 테스트 러너, Web API, 보안, Node.js 호환성, 성능 등 거의 모든 영역에서 대대적인 개선이 이루어져 ‘완전한 런타임 플랫폼’으로 도약했음
풀스택 런타임 통합
- Bun 1.3은 HTML 실행, 라우팅, 핫 리로드, WebSocket 등 풀스택 개발 기능을 Bun.serve()에 통합함
- React Fast Refresh와 네이티브 HMR 지원
- 백엔드와 프런트엔드 서버를 단일 프로세스로 통합해 CORS 문제를 근본적으로 해소함
-
bun build --compile로 프런트엔드와 백엔드를 단일 실행 파일로 번들링 가능
데이터베이스 및 Redis 지원
-
Bun.SQL이 MySQL·MariaDB·PostgreSQL·SQLite를 단일 API로 통합 지원
-
sql.array 헬퍼를 통해 PostgreSQL 배열 타입을 간편하게 처리
- Unix 도메인 소켓 연결, 단순 쿼리 프로토콜, null 처리 등 세밀한 향상
-
내장 Redis 클라이언트 추가, ioredis 대비 최대 7.9배 성능 향상, Pub/Sub 완전 지원
번들러 및 빌드 기능
-
Bun.build() API로 코드 내에서 실행 파일 생성 가능
-
코드 서명(macOS·Windows), 크로스 컴파일(Linux/macOS/Windows), 메타데이터 설정 지원
-
더 똑똑한 미니파이어로 사용되지 않는 코드 제거, JSX 구성 옵션, Glob 패턴 지원
패키지 관리 기능 확장
-
Isolated installs 기본 적용, 각 워크스페이스가 자신만의 의존성만 접근
-
Catalog 기능으로 모노레포 내 의존성 버전을 중앙 관리
-
보안 스캐너 API 및 minimumReleaseAge 도입으로 공급망 공격 방어 강화
-
bun why, bun update --interactive, bun info, bun audit 등 npm·pnpm 수준의 관리 도구 완비
테스트 및 디버깅 개선
-
bun test에 VS Code Test Explorer 연동, 병렬 테스트(test.concurrent), 랜덤 실행, type 테스트(expectTypeOf) 추가
-
.failing, .serial, .each 체인 지원 및 스냅샷 자동 들여쓰기 보존
-
CI 환경에서 test.only 차단, 테스트 순서 일관성 강화
Web API 및 런타임 표준 강화
-
YAML 파싱/직렬화 내장, .yaml 파일 직접 import 가능
-
request.cookies API로 쿠키 자동 관리 지원
-
ReadableStream .text()/.json() 등 스트림 헬퍼, Zstandard 압축, WebAssembly 스트리밍 로딩 지원
-
DisposableStack/AsyncDisposableStack 구현으로 리소스 정리 단순화
보안 및 시스템 기능
-
Bun.secrets로 운영체제의 보안 저장소(Keychain 등) 활용 가능
-
Bun.CSRF로 CSRF 토큰 생성·검증 API 제공
-
crypto 모듈 400배 성능 개선, Diffie-Hellman, HKDF, Prime 연산 강화
Node.js 호환성 향상
- Node.js 테스트 800개 이상 추가 통과, node:test, node:vm, worker_threads, fs, http2 등 대폭 확장
-
require.extensions, process.binding(), native addon 제어, perf_hooks, tls, cluster 등 대부분의 코어 모듈 완전 지원
- N-API 호환율 98% 이상, Node.js 24.3.0 버전과 동일 수준의 런타임 식별
개발자 경험 개선
-
기본 TypeScript 설정 변경("module": "Preserve")
-
BUN_OPTIONS 환경변수, --console-depth, --user-agent 등 런타임 제어 강화
-
Preload 스크립트(BUN_INSPECT_PRELOAD) 및 SQL Preconnect 지원
-
bunx 개선으로 패키지-바이너리 이름 불일치도 실행 가능
성능 및 안정성
- CPU 유휴 사용량 감소, GC 효율화, 메모리 10~30% 절감, 빌드 속도 60% 향상
-
postMessage 최대 500배, bun install 2.5배, Array.includes 2.8배 빠름
-
WebKit·Zig 레벨 최적화로 런타임 전반 속도 향상
- 수백 건의 버그 수정과 메모리 누수 해결로 안정성 대폭 개선
주요 변경 사항
-
Bun.serve() 타입 구조 변경 및 static → routes로 명칭 수정
- SQL 클라이언트 호출 방식이 함수형 → 태그드 템플릿으로 변경
- Linux GC 시그널이 SIGPWR로 교체
- Node.js 버전 표시를 22.x → 24.3.0으로 변경
Bun 1.3은 단순한 런타임을 넘어 “Node·Deno·Vite·pnpm을 아우르는 통합 플랫폼” 으로 자리매김하는 전환점