JavaScriptランタイム「Bun v0.5」登場。MySQLやPostgreSQLのデータベース接続対応、新機能「Workspaces」、Bun.dnsなど搭載

2023年1月23日

サーバサイドで実行可能なJavaScriptランタイム「Bun」の最新バージョン「Bun v0.5」がリリースされました。

BunはNode.jsやDenoといったJavaScriptランタイムの競合と位置づけられているオープンソースのソフトウェアです。

JavaScriptエンジンにはSafariに搭載されているJavaScriptCoreを採用。Node.jsとの互換性を実現するためにNode.jsの主要なAPIやNode.jsのモジュール依存関係解決アルゴリズムも実装し、内蔵するnpmクライアントにより高速にnpmパッケージを読み込んで利用できるようになっています。

さらにバンドラ、トランスパイラ、タスクランナーなどの機能が最初から統合されており、TypeScript/JSXトランスパイラによってTypeScriptファイルをそのまま読み込んで実行できるなど、JavaScriptランタイムとして先行するNode.jsのエコシステムやDenoの利点を取り込みつつ、さらに機能を発展させています。

その上で、開発言語としてZigを採用し、メモリ管理などを含む低レイヤでの実装を実現することで、他のJavaScriptランタイムと比較して高速な動作を実現していると説明されています。

PostgreSQLやMySQLとの接続もサポート

Bun v0.5では「node:dns」や「node:tls」などによるソケット通信をサポート。これによりNode.jsとの互換性が向上し、npmとして実装されたデータベースドライバなどが動作するようになりました。

具体的にはPostgres.jsによるPostgreSQLとの接続やmysql2によるMySQLとの接続、Node.js clientによるRedisとの接続などが可能になっています。

複雑なソフトウェアを簡単にする新機能Workspaces

新機能として、package.jsonのなかでWorkspacesと呼ばれる機能が使えるようになりました。

「Workspaces make it easy to develop complex software as a monorepo consisting of several independent packages. 」(ワークスペースを利用することで、複雑なソフトウェアを複数の独立したパッケージからなるモノレポとして簡単に開発することができます)と説明されており、コードを複数の部品に分解できること、そして依存性の重複を避けることなどが可能になるとのことです。

Workspacesには今後、名前を付けられるようになる予定。

またドメイン名を解決するBun.dnsおよびNode.jsとの互換性のためのnode:dnsなどの機能も追加されています。

その他詳しい情報については「Bun v0.5」をご覧ください。また、Bun v0.5のリリースの2日後にはBun v0.5.1が早くも登場しています。

あわせて読みたい

JavaScript プログラミング言語 Bun TypeScript




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本