概要
JavaScriptランタイムのBunが10月10日、v1.4.3をリリースした。最大の目玉は、標準のtscより最大6.4倍高速に動作する組み込みのTypeScript型チェッカー「bun check」だ。Microsoftが開発するGo言語版TypeScriptコンパイラ「typescript-go」をBunにポートして実装されており、bun check、bun run --check src/index.ts、bun test --checkといったコマンドで、既存のTypeScriptセットアップに統合する形で利用できる。エディタ側の型チェック処理自体には変更はない。
ベンチマークと互換性
16コアのApple Silicon Mac上での計測では、複数プロジェクトにおいてtsc 7.0.2比で処理速度が3〜6.4倍、メモリ使用量は2.2〜4.9倍少ない結果が示されたという。互換性面では、TypeScript 7.0.2のconformanceテストスイート(51,210件)を100%通過したとしており、実際のオープンソースプロジェクト72件・1,102設定で出力が完全に一致したこと、さらに136,235個の関数を対象とした大規模ファジングテストも実施したと報告している。型チェッカーという性質上、わずかな出力差異でも既存プロジェクトの挙動に影響しうるため、こうした網羅的な検証結果を前面に出している点が特徴的だ。
その他の改善点
型チェッカー以外にも、ランタイム面でいくつかの改善が加えられている。サーバーがアイドル状態にある際のCPU使用率を67〜89%削減し、不要な定期処理を抑制した。またHTTP/2では、CVE-2023-44487やCVE-2025-8671に代表されるストリームリセット攻撃への対策を実装している。新APIとして追加されたBun.FetchSessionでは、グループ化したリクエストごとに独自のTLS設定・プロキシ・コネクションプールを持たせられるようになった。
安定性面では、TLS証明書検証の強化やnode:httpのパイプライン処理・keep-alive接続周辺など、fetch()やWebSocketの信頼性向上に関わる修正が多数行われている。型チェッカーの高速化と合わせて、Node.js互換レイヤーの品質を地道に積み上げるリリースという位置づけになりそうだ。