Deno v1.37でリリースされそうな機能について (part 2)

前週に引き続き、直近で開発されているDeno v1.37でリリースされそうな機能について紹介いたします。

Jupyter Kernelの実装 (deno jupyter)

Deno本体にJupyter Kernelを実装するPRがマージされています。

feat: Add “deno jupyter” subcommand #20337

このPRではdeno jupyterという新しいコマンドが実装されており、これを利用することで、Deno本体に組み込まれたJupyter Kernelのインストールや起動などを行うことができるようです。

このコマンドでは、以下の3つのオプションが提供されています。

オプション説明
--installDeno本体に組み込まれたKernelをJupyterにインストールします。
--kernelDeno本体に組み込まれたKernelを起動します。以下の--connとセットで指定する必要があります。
--connコネクションファイルのパス

これらのうち、ユーザーが直接利用するのは--installオプションです。

# KernelをJupyterにインストールします
$ deno jupyter --unstable --install

--kernel--connについては、JupyterがKernelを起動する際に使用されるもののため、ユーザーが直接利用することは想定されていません。

また、--install--kernelも指定しないでdeno jupyterを実行すると、Deno Kernelがインストールされているかどうかを確認できるようです。

$ deno jupyter --unstable

今のところ、deno jupyterの利用には--unstableの指定が必要なようです。

using/await usingのサポート (TypeScriptのみ)

Deno本体のTypeScriptをv5.2へアップデートする対応に続いて、usingawait usingをサポートする対応がマージされています。

feat: explicit resource management in TypeScript #20506

今のところ、using/await usingのサポートはTypeScriptのみで、JavaScriptについてはV8本体でのサポート待ちのようです。

class Disposable {
  [Symbol.dispose]() {
    console.info("Disposable: disposed!");
  }
}

{
  using disposable = new Disposable();
}
// => Disposable: disposed!

denoland/deno-docs

denoland/deno-docsという、Denoの新しいドキュメンテーションサイト(docs.deno.com)のリポジトリが公開されています。

今後のマニュアルの更新などは、従来のdenoland/manualリポジトリではなく、このdenoland/deno-docsリポジトリで進められていく予定のようです。

How We Built Deno KV using FoundationDB

Denoの公式ブログで以下の記事が公開されました。

Deno KVの開発や設計の背景、FoundationDBの活用やDeno KVを構成する各種コンポーネントなどに関して解説されています。