Deno v2.4.4
Deno v2.4.4がリリースされています。
Web API
EventSourceでヘッダーのカスタマイズがサポート
EventSourceでheadersオプションがサポートされています (#30278)
Deno独自のオプションのようで、リモートリソースへ接続する際に送信されるヘッダーをカスタマイズできます。
Deno KV - 環境変数の追加
Deno KV向けに以下の環境変数がサポートされています (#30320)
| 環境変数 | 概要 |
|---|---|
DENO_KV_DEFAULT_PATH | Deno.openKv()にデータベースパスが指定されたなかった際のデフォルトのパスを指定できます |
DENO_KV_PATH_PREFIX | 指定されると、Deno.openKv()に指定されたデータベースパスに、この環境変数の値がプレフィックスとして結合されます |
deno repl - --jsonオプションが追加
deno replコマンドに--jsonオプションが追加されています (#30307)
このオプションが指定されると、Denoがファイルディスクリプター3にパイプを作成し、それを介してJSONメッセージを送信することで、Denoに指定したコードを動的に実行させる仕組みのようです。まず後続のペイロード長をリトルエンディアン形式の32ビット整数として書き込み、その後に { type: "Run", code: "<code>", output: true, }形式のJSONペイロードをパイプに書き込むことで、指定された<code>をDenoが実行し、その結果をパイプ経由で読み込むことができるようです。
deno bundle
package.jsonの取り扱いの改善
require()によってパッケージのサブディレクトリを指定した際に、package.jsonの内容が考慮されるよう挙動が改善されています (#30253)
また、ESM形式のモジュールからpackage.jsonを持つディレクトリへのimportがサポートされています (#30273)
Conditional exports に関する改善
--platform=browserが指定されたら、npmパッケージのbrowserもしくはimport conditionsが解決されるように挙動が変更されています (#30250)
deno compile - Deno.build.standaloneに関するバグ修正
deno compileによって生成された実行可能ファイルにおいて、Worker内だとDeno.build.standaloneが未設定になってしまう問題が修正されています (#30335)
node:fs
Buffer形式のパスのサポート
rename()やunlink()の互換性が改善されており、引数としてBuffer形式でパスを渡せるようにする改善などが実施されています (#30245, #30257)
open()の改善
open()及びopenSync()の互換性の改善やconstantsに各プラットフォームごとに正しい値を設定する改善などが実施されています (#30191, #30113)
また、必要のない場面であっても、open()が常に read パーミッションを意図せず要求してしまう問題が修正されています (#30300)
node:string_decoder
StringDecoderでbase64urlがサポートされています (#30366)
node:zlib
BrotliCompressなどのbrotli関連のAPIでメモリリークが起きることのある問題が修正されています (#30277)
node:worker_threads
Worker内においてrequire()が部分的にサポートされています (#30279)
@types/node
Denoが参照する@types/nodeのバージョンがv22からv24へ更新されています (#30343)
deno publish - relative-package-importエラーに関する改善
ワークスペースルートがパッケージだった場合に、意図せずrelative-package-importエラーが起きてしまう問題が修正されています (#30333)
deno update - --latestの挙動の改善
deno update --latestの実行時に、すでに最新バージョンが入っている場合でもdeno.jsonの specifier が更新されるよう挙動が改善されています (#30249)
deno install - deno.jsonのlinksの取り扱いの改善
deno.jsonのlinksからjsrパッケージが削除された際に、deno.lockからも削除されるように改善されています (#30289)
パフォーマンス改善
Node-APIのパフォーマンス改善が実施されています (#30291)。Tursoの実行が3〜4倍近くまで改善されているようです。
また、structuredClone()のパフォーマンスも改善されており、16%ほど高速化が実現されているようです (#30258)。MessagePort#postMessageなどでも同様の高速化が適用されています。
deno_stdのリリース
deno_stdのリリースが実施されています (release-2025.08.13)
@std/net@1.0.5 - @std/net/unstable-ipが追加
@std/net@1.0.5がリリースされています。
@std/net/unstable-ipモジュールが追加されています。isIPv4()及びisIPv6()が提供されています (#6765)
@std/text@1.0.16 - @std/text/unstable-trim-byが追加
@std/text@1.0.16がリリースされています。
@std/text/unstable-trim-byモジュールが追加されています。trimBy()/trimStartBy()/trimEndBy()が提供されており、先頭や末尾から指定されたパターンにマッチする文字列を削除できます (#6778)
@std/toml@1.0.9 - プロトタイプ汚染攻撃への対策
@std/toml@1.0.9がリリースされています。
parse()においてプロトタイプ汚染攻撃への対策が実施されています。
deno deployコマンドのドキュメント
Deno v2.3.6で追加されたdeno deployコマンドに関する公式ドキュメントが追加されています。