Bun 1.3 リリース
(bun.sh)- 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.cookiesAPI により Cookie の自動管理 をサポート- ReadableStream .text()/.json() などのストリームヘルパー、Zstandard 圧縮、WebAssembly のストリーミング読み込み をサポート
- DisposableStack/AsyncDisposableStack の実装によりリソース整理を簡素化
セキュリティおよびシステム機能
Bun.secretsにより OS のセキュアストア(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 を包摂する統合プラットフォーム」 として位置づけられる転換点
5件のコメント
短い間ですが最初のころから使ってみた立場としては、ものすごい進歩だと思いますし、もう一度使ってみようかな?と思わせてくれますね(笑)
これがうまく発展してくれるといいですね。
こういう計画があったんですね!!
SQLインターフェースが統一されたのがいいですね
Vite が統合しなかったのには何か理由があるのでしょうが、Bun は実運用での評判がどうなのか気になります。