JavaScriptランタイム「Bun v0.3.0」リリース。メモリ消費量が3分の1以下に、npmパッケージの自動インストールなど
サーバサイドで実行可能なJavaScriptランタイム「Bun」の最新バージョン「Bun v0.3.0」がリリースされました。
BunはJavaScriptランタイムとバンドラ、トランスパイラ、タスクランナーなどの機能が最初から統合されているソフトウェアです。
JavaScriptエンジンにはSafariに搭載されているJavaScriptCoreを採用。Node.jsの主要なAPIやNode.jsのモジュール依存関係解決アルゴリズムも実装し、内蔵するnpmクライアントにより高速にnpmパッケージを読み込んで利用できるなど、Bun単体でさまざまな機能が統合され、便利に使えます。
さらにTypeScript/JSXトランスパイラによってTypeScriptファイルをそのまま読み込んで実行できるなど、既存のJavaScriptランタイムであるNode.jsのエコシステムやDenoの利点を取り込もうとしています。
その上で、開発言語としてZigを採用し、メモリ管理などを含む低レイヤでの実装を実現することで、他のJavaScriptランタイムと比較して高速な動作を実現していると説明されています。
メモリ使用量が激減して3分の1以下に
Bun v0.3.0での最大の改善点はメモリ使用量の減少です。前バージョンのBun 0.2.2と比較して3分の1から5分の1程度になったと説明されています。
下記はBun開発者のJarred Sumner氏のツイートです。Bunの前バージョンとの比較だけでなくNode.jsやDenoよりもメモリ使用量が少ないことを示しています。
Introducing Bun v0.3.0
— Jarred Sumner (@jarredsumner) December 7, 2022
- Reduced memory usage
- child_process, process.{stdout, stderr}
- auto install npm packages on import
- for await (const line of console) {}
- Array.fromAsync()
- FileSystemRouter, many stability bugfixeshttps://t.co/1QXxaS5TCj
node_modulesディレクトリにモジュールがなかった場合には、npmレジストリから自動的にパッケージをインポートする機能も追加されました。
また、Next.jsのようなファイルシステムベースのルーティング機能も実装されています。
そのほか詳しい新機能や変更点については「Bun v0.3.0」をご覧ください。
あわせて読みたい
NewSQLは金融システムのミッションクリティカルで高セキュリティな要件に応えられるか? TISが評価結果を明らかに[PR]
≪前の記事
高品質なシステム開発を高速に実現するテスト自動化ツール。ノーコードでテストシナリオを作成、UI変更をAIで自動検出しテストを自動メンテしてくれる「Autify」[PR]