3月30日、Bun v1.0.36がリリースされた。
Bunは、非常に高速なJavaScriptランタイムであり、バンドラ、トランスパイラ、パッケージマネージャーを兼ね備えている。このバージョンでは、13のバグが修正され、新たにfs.openAsBlob
とfs.opendir
のサポートが追加された。また、複数のbin
エントリがpackage.json
にある場合のエッジケースや、bun build --target bun
のエンコーディングに関するバグが修正された。
具体的には、以下のような改善点が挙げられる。
fs.openAsBlob()
APIのサポート追加により、ファイルをBlobとして開くことができるようになった。これにより、Blob
として同じ基礎を使用したファイルが返される。
import { openAsBlob } from "node:fs";
const blob = await openAsBlob("hello.txt");
console.log(await blob.text()); // "Hello, world!"
fs.opendir()
のサポートが追加され、ディレクトリを開いてその内容を読み取ることができるようになった。
import { opendir } from "node:fs";
const dir = await opendir(".");
for await (const dirent of dir) {
console.log(dirent.name); // "hello.txt", "world.txt"
}
さらに、これらの改善点に加えて、ファイルディスクリプタのリークを防ぐメカニズムや、stdin
とstdout
をSIGINT/SIGTERMで元の状態に復元する機能など、さまざまな改善が行われている。
詳細はBun v1.0.36を参照してほしい。
また、Bun v1.1(Bundows)が4月1日にリリース予定だ。
コードネームである「Bundows」からも予想される通り、フルのWindowsサポートが追加されると予想される。YouTubeでプレミアム配信されるようなので、興味のある方は通知をONにすると良い。