Bun 1.4.4がbun fmtを追加、Prettier互換のフォーマッター
2026年10月22日公開のBun(バン)1.4.4は、Prettier(プリティア)互換のフォーマッターbun fmtを追加しました。BunによるとPrettier自身のリポジトリのチェックはPrettierより286倍速いとしています。
4 分で読めます

数字で見る
- bun fmt --check on Prettier's repo, per Bun
- 59.7 ms
- Prettier 3.9.10 on the same repo
- 17.1 s
- faster bun check on MUI docs than Bun 1.4.3
- 7.8x
2026年10月22日に公開されたBun 1.4.4は、Bunのランタイムに組み込まれたコードフォーマッターbun fmtを追加しました。既存のPrettierの設定をそのまま読み込みます。Bunによると、Prettier自身のリポジトリでbun fmt --checkは59.7ミリ秒で終わり、Prettierでは17.1秒かかります。今回のリリースではbun checkも速くなり、Yarn Berryのロックファイルも移行できるようになりました。
Bunは、パッケージマネージャー、テストランナー、型チェッカーも備えたJavaScriptランタイムです。フォーマッターはコードを一貫したスタイルに書き直すツールで、チームがスペースや改行の書き方で揉めずに済みます。
bun fmtの機能
Jarred SumnerによるBun v1.4.4のリリースノートによると、bun fmtは広く使われているJavaScriptのフォーマッターPrettierを移植したものです。プロジェクトに既にある次の設定ファイルを読み込みます。
.prettierrc*、prettier.config.*、package.jsonのprettierキー.editorconfigと.prettierignore- 別のフォーマッターであるoxfmtの設定
bunfig.tomlの[fmt]セクション
JavaScript、TypeScript、JSX、CSS、SCSS、HTML、Vue、Svelte、JSON、YAML、TOML、Markdown、MDX、GraphQLなどを整形できます。Tailwindのクラスの並べ替え、package.jsonのキーの並べ替え、Svelteへの対応は組み込みなので、これらのPrettierプラグインは不要です。importの並べ替えも組み込まれていますが、標準ではオフです。
Astroのように、まだPrettierのプラグインが必要な言語では、プロジェクトにインストール済みのPrettierに処理を任せます。対応していないプラグインがあると、bun fmtはエラーを表示し、該当ファイルを飛ばして終了コード2で終わります。従来のbun formatコマンドは、引き続きプロジェクト独自のformatスクリプトを実行します。
Bunが示したベンチマーク
以下の数字はBun自身によるもので、第三者による検証はされていません。
| テスト | bun fmt | 比較 |
|---|---|---|
| Prettierのリポジトリ、2,616ファイル | 59.7ミリ秒、48MB | Prettier 3.9.10:17.1秒、459MB(286倍) |
| vitest、date-fns、monkeytype、h3 | Prettier 3.9.9より234〜425倍速い | |
| vite(独自の設定) | 65.2ミリ秒 | oxfmt 0.74.0:406.7ミリ秒(6.2倍) |
| fumadocs(独自の設定) | 44.6ミリ秒 | oxfmt 0.74.0:1,395ミリ秒(31倍) |
記事の要約ではbun fmtはoxfmtより3〜6倍速いとしていますが、同じ記事のfumadocsの行は31倍を示しています。出力については、Prettierの整形テスト9,731件のうち9,648件、つまり99.1%が一致したとしています。Prettierと一般的なプラグインの組み合わせと比べると、JavaScriptとTypeScriptの出力の97.9%が同一でした。
AICoderは、このフォーマッターが10月12日にBunのmainブランチに入った時点で、別のテスト結果を伝えていました。VS Codeのソースの整形チェックにかかったCPU時間は、Bunで2.9秒、Prettier 3.9.9で295秒でした。
bun checkとbun installの高速化
今回のリリースは、Bun 1.4.3がbun checkを追加、より高速なTypeScriptの型チェッカーで登場した型チェッカーをさらに改良しています。MUIのドキュメントでは、bun checkの所要時間が10.28秒から1.31秒に縮み、最大メモリーは11.2GBから1.3GBに減りました。遅くなったプロジェクトもあり、Bun自身のsrc/jsは0.11秒から0.20秒になりました。
bun installは、Yarn 2以降(いわゆるYarn Berry)のロックファイルをbun.lockに移行し、固定されたバージョンを保ちます。Bun 1.4.3が扱えたのはYarn v1だけでした。ダウンロードに失敗したときは、間隔を広げながら最大5回まで再試行します。Sumnerは「Bun v1.4.3では5回の再試行がすべて5ミリ秒以内に起きていたため、レジストリーが少し止まっただけでインストールが失敗していました」と書いています。
このリリースでは271件の問題が修正され、TLS、WebSocket、データベースクライアント、パッケージマネージャーのセキュリティ修正も含まれます。ただし記事は詳細を示していません。Bun.SQLはクエリ1件あたりのクライアントのCPU使用量が最大48%減ったとしています。
確認すべき互換性のない変更
記事では、動作が変わる点がいくつか本文中に挙げられています。
{1..3}や!(g)/a.tsのようなglobのパターンは、文字どおりの文字列ではなくパターンとして扱われるようになりました。bun publishは--tagなしではプレリリース版を公開しなくなり、--provenanceはエラーになります。Bun.hash()はnullやundefinedをハッシュ化せず、例外を投げるようになりました。- TLSサーバーがクライアント証明書を求めるのは、
requestCert: trueを設定したときだけになりました。 - アップグレード後、
bun testのカバレッジの「% Lines」が下がることがあるので、coverageThresholdを確認してください。
開発者にとっての意味
BunはPrettier互換のフォーマッターを、多くのチームがすでに使っているツールの中に組み込みました。JavaScriptのプロジェクトから依存関係を1つ減らせます。
- 切り替える前にCIで試す。 ブランチで
bun fmt --checkを実行し、結果をPrettierと比べてください。出力の97.9%が同一なので、変わるファイルは少数のはずです。 - プラグインを確認する。 対応していないPrettierのプラグインがあると、
bun fmtは終了コード2で終わり、CIのジョブが失敗します。 - セキュリティ修正のためにアップグレードする。
bun upgradeを実行してください。BunはTLSとWebSocketの修正を挙げており、これはBunで動くサーバーにとって特に重要です。 - 先に互換性のない変更を確認する。 globの動作、
bun publishのルール、TLSのクライアント証明書がすべて変わりました。展開する前に、1.4.4でテストを実行してください。
出典
関連記事

Bun 1.4.3がbun checkを追加、より高速なTypeScriptの型チェッカー
Bun 1.4.3は、TypeScript(タイプスクリプト)の型チェッカーbun checkを内蔵しました。Bunによると、tsc 7.0.2より3倍から6.4倍速く動作し、51,210件の適合性テストすべてに合格します。

Tools This Week:2026年10月23日 - DuckDB 2.0、TorchTPU
今週の開発者ツール6本を紹介します。長期サポート版のDuckDB(ダックDB)2.0とTorchTPUを筆頭に、TypeScript 7.1 Beta、Perplexity SPACE、DeepInferも取り上げます。

Node.js 26.12.1、24.22.1、22.23.4が脆弱性10件を修正
Node.js(ノード・ジェイエス)は2026年10月21日に脆弱性10件を修正しました。うち4件は深刻度「高」で、リモートからのコード実行につながりうるBrotliデコーダーのバグも含まれます。