Bunのバンドル処理がMacで60%高速化。Webサーバ機能ではホットリロードによりコード変更が自動的に反映
今回は「Bunのバンドル処理がMacで60%高速化。Webサーバ機能ではホットリロードによりコード変更が自動的に反映」についてご紹介します。
関連ワード (最近、機能、開発支援等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
JavaScriptランタイムのBunは、最近のアップデートでバンドラ機能の高速化やホットリロード機能を備えたWebサーバなどの新機能などが追加されました。
ホットリロードによるフロントエンド開発支援
先月(2025年2月)22日に公開されたBun v1.2.3では、フロントエンド開発に便利なホットリロード機能がWebサーバ機能(Bun.serve())に搭載されました。
ホットリロードにより、BunのWebサーバ機能で表示しているWebページのコードを変更すると、自動的にその変更がWebページの表示に反映されます。
In the next version of Bun
Bun.serve() gets builtin support for hot reloading frontend applications. pic.twitter.com/D7vu7ozqiO
— Jarred Sumner (@jarredsumner) February 11, 2025
これによりフロントエンド開発が便利に行えるようになります。
またWebサーバ機能にルーティング機能が組み込まれました。これにより、フロントエンドとバックエンドのコードを1つのBunのWebサーバで実行できるようになります。
In the next version of Bun
Bun.serve() gets a simple builtin router. It supports params. pic.twitter.com/CGFmg63JQi
— Jarred Sumner (@jarredsumner) February 15, 2025
バンドラ機能がmacOSで最大60%向上
2月26日にリリースされたBun v1.2.4では、バンドル処理を行うバンドラ機能(Bun.build)が高速化されました。
これはWindowsとmacOSにおいてビルド処理のファイル操作のために専用のI/Oスレッドプールを使うようになったことによる向上だと説明されています。
論理CPUが3以上のWindowsとmacOSでは自動的に有効となり、特にmacOSでは最大60%の性能向上が見られるとのことです。
In the next version of Bun
`bun build` & `Bun․build` gets up to 60% faster on macOS pic.twitter.com/JHA4NceCTo
— Jarred Sumner (@jarredsumner) February 23, 2025
その他、新バージョンの細かい機能追加やバグフィクスについては、それぞれのリリースノートをご参照ください(Bun v1.2.3、Bun v1.2.4)。
Bun v1.2.3
– Fixes 128 bugs (addressing 349 👍)
– Incredibly fast frontend dev server with hot reloading
– Builtin routes in Bun.serve
– Many Bun.SQL fixes
– Wasm gets faster
– Node compatibility improvements for napi & BufferThanks to 23 contributors!https://t.co/QTyHrPnZtD
— Bun (@bunjavascript) February 22, 2025
Bun v1.2.4
– Frontend dev server stability improvements
– Codesign compiled executables on macOS
– Up to 60% faster `bun build` on macOS
– Node.js compatibility fixes
– Faster array.includes
– Many bugfixesThanks to 17 contributors!https://t.co/1zHeDry0l9
— Bun (@bunjavascript) February 26, 2025