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
コマンドに関する公式ドキュメントが追加されています。