Deno v2.4.5
Deno v2.4.5がリリースされています。
deno lsp
Pull Diagnostics
deno lspでPull Diagnosticsが実装されています (#30325)
workspace/willRenameFilesの改善
.jsから.tsへのリネームが適切に動作するよう改善されています (#30458)
deno install
DENO_INSTALL_ARCH環境変数
DENO_INSTALL_ARCH環境変数がサポートされています (#30473)
DENO_INSTALL_ARCH=aarch64のように指定することで、deno installによってインストールされる際に取得されるnpmパッケージを変更できます。
出力の改善
インストールされたパッケージ名が表示されるよう出力が改善されています (#30387)
❯ deno install
Packages: 9
+++++++++
Resolved: 9, reused: 0, downloaded: 9, added: 9
Dependencies:
+ jsr:@david/dax 0.41.0
+ jsr:@david/which 0.4.1
+ jsr:@std/assert 0.221.0
+ jsr:@std/bytes 0.221.0
+ jsr:@std/fmt 0.221.0
+ jsr:@std/fs 0.221.0
+ jsr:@std/io 0.221.0
+ jsr:@std/path 0.221.0
+ jsr:@std/streams 0.221.0
--entrypointの改善
deno.jsonのexcludeで除外されているモジュールが--entrypoint (-e) でエントリーポイントに指定された際に、ダウンロードが実行されない問題が修正されています (#30442)
deno bundle - .jsonの取り扱いの改善
deno bundleにおいては.jsonファイルをImport Attributesなしでも読み込めるようにする改善が実施されています (#30413)
deno outdated/deno update - latestタグの取り扱いの改善
アプリケーションで指定されたバージョン要求を満たす場合は、latestタグが付与されたバージョンのnpmパッケージが使用されるように挙動が変更されています (#30412)
deno publish - precompiled JSX transform のサポート
deno publishでcompilerOptions.jsx: precompileがサポートされています (#30466)
Deno v2.2.1でdeno publishにJSXのサポートが追加されましたが、意図せず@jsxRuntime classicにフォールバックされてしまっており、うまく動作しなかったようです。
deno run/deno eval - --extでCommonJSがサポート
--extオプションでmts, mjs, cts, cjsがサポートされています (#30398)
$ echo 'console.info(require("events").on)' | deno run --ext=cjs -R -
[Function: on]
node:tls
connect()でcertとkeyオプションがサポートされています (#30426)
また、connect()に渡したsocketにおいてもcloseイベントが適切に発火されるよう修正されています (#30451)
node:os
getPriority()及びsetPriority()の互換性が改善されています。WindowsにおいてsetPriority()が適切に動作するよう改善されています (#30383)
node:stream
promisesがすでに実装されていたものの、exportされていなかった問題が修正されています (#30427)
node:fs
cp()においてコピー元及びコピー先がともにディレクトリである際に、コピー先にコピー元と同名ディレクトリが作成される問題が修正されています (#30408)
Deno API
Deno.chmodのWindowsサポート
Deno.chmodとnode:fsのchmod()に対するWindowsのサポートが追加されました (#30436)
パフォーマンス改善
TCPソケットのbacklogパラメーターの調整
listen(2)に渡すbacklogパラメーターの値が128から511に変更されています (#30471)
Deno Deploy EA に関するアップデート
Deno KV のサポート
Deno Deploy EA においても Deno KV がサポートされたようです。Deno KV に関するドキュメントが追加されています (deploy/early-access/reference/deno-kv.md)
Exposing an environment variable as a file
環境変数の値を一時ファイルに格納する機能が追加されています (Exposing an environment variable as a file)
この機能を有効化すると、各種環境変数には設定値を格納した一時ファイルへのパスが設定されるようです:
const path = Deno.env.get("DB_URL");
const value = await Deno.readTextFile(path);