Deno v2.8.1

Deno v2.8.1がリリースされています。

deno bundle

package.jsonsideEffectsフィールドがサポートされています (#34406)。sideEffectsフィールドの設定値を元に Tree Shaking が行われるようです。

また、--platform browser向けにpackage.jsonでオブジェクト形式のbrowserフィールドがサポートされています (#34407)

deno pack

deno packコマンドにおける@deno/shim-denoの自動注入機能が削除されています (#34411)

この変更に合わせて--no-deno-shimオプションも削除されています。

背景としては、@deno/shim-denoパッケージはしばらくメンテナンスされていない状況であったことが理由のようです。

Web API

fetch()/WebSocket

--deny-netが指定された際に、fetch()及びWebSocketにおいて、名前解決後のIPアドレスが考慮されるように挙動が変更されています (#34236)

fetch()/WebSocketに指定されたドメインの名前解決結果が--deny-netにマッチする場合、アクセスが拒否されます。

CompressionStream

Deno v2.8.0においてnew CompressionStream("brotli")及びnew DecompressionStream("brotli")の型チェックが失敗する問題が修正されています (#34349)

Node.js 互換性の改善

--preload npm:<package>

--preloadオプション (--import) でnpmパッケージの読み込みがサポートされています (#34346)

node:module

Deno v2.8.0にて導入されていたenableCompileCache()/flushCompileCache()/getCompileCacheDir()の追加が Revert されています (#34348)

Deno本体ではすでにV8 code cacheが実装されていることに加え、この変更によって意図せず--allow-envが要求されてしまう副作用があったことが理由のようです。

node:process

loadEnvFile()--allow-readだけでなく--allow-envも要求するように挙動が変更されています (#34350)

node:tls

createServer()pfxオプションがサポートされています (#34383)

また、createSecureContext()における配列形式のcert/key/pfxオプションがサポートされています (#34379)

node:util

getSystemErrorMap()が実装されています (#34372)

deno_stdのリリース

deno_stdのリリースが行われています (release-2026.05.26)

@std/async@1.4.0

@std/async@1.4.0がリリースされています。

@std/async/unstable-debounce

@std/async/unstable-debounceで提供されていたdebounce()へのAbortSignalのサポートが@std/async/debounceへマージされました (#7096)

今後は@std/async/debounceにおいてもAbortSignalサポートが利用できます。

@std/async/unstable-lazy

@std/async/unstable-lazyが安定化されました (#7091)

今後は@std/async/lazyから利用できます。

@std/async/unstable-channel

Channelに対して以下の変更が実施されています:

  • receive()及びsend()メソッドにsignalオプション (AbortSignal) が追加 (#7086)
  • toReadableStream()メソッドが追加 (#7086)
  • constructorChannelOptionsオブジェクトを第1引数として受け取るように変更 (#7106)

@std/cli@1.0.30

@std/cli@1.0.30がリリースされています。

@std/cli/unstable-progress-bar

ProgressBarのオプションに関する以下の変更が実施されています:

  • refreshMillisecondsオプションがintervalにリネームされています (#7094)
  • formatterオプションに渡されるProgressBarFormatterオブジェクトのstyledDataプロパティーが関数から getter に変更されています (#7095)

@std/collections@1.2.0

@std/collections@1.2.0がリリースされています。

@std/collections/unstable-interleave

@std/collections/unstable-interleaveが安定化されています (#7115)。今後は@std/collections/interleave から利用できます。

また、interleave()Iterableオブジェクトがサポートも追加されています (#7088)

@std/data-structures@1.1.0

@std/data-structures@1.1.0がリリースされています。

新規API

以下のモジュールが追加されています:

  • @std/data-structures/unstable-multimap: MultiMap (#7100)
  • @std/data-structures/unstable-indexed-heap: IndexedHeap (#7076)

@std/data-structures/unstable-deque

@std/data-structures/unstable-dequeが安定化されています (#7092)

今後は@std/data-structures/dequeから利用できます。

@std/data-structures/unstable-rolling-counter

RollingCounterに以下のメソッドが追加されています:

  • at()及びtoArray() (#7102)
  • toJSON()及びRollingCounter.from() (#7074)

@std/html@1.0.7

@std/html@1.0.7がリリースされています。

@std/html/unstable-html

新規モジュールとして@std/html/unstable-htmlが追加されています (#7130)

html()関数が提供されており、Tagged template によってHTMLを作成できます:

html`<div>foo</div>`;

この関数はdeno fmtによってTagged template内のHTMLがフォーマットされるようにすることを目的に導入されたようで、現時点では埋め込む値に対するエスケープなどは実施されないため注意が必要そうです。

@std/http@1.1.1

@std/http@1.1.1がリリースされています。

@std/http/unstable-route

routeRadix()が追加されています (#7075)。Fastifyなどと同様にRadix treeベースのルーター実装が提供されます。

この変更に伴い、既存のroute()routeLinear()にリネームされています。

@std/http/unstable-message-signatures

@std/http/unstable-message-signaturesが追加されています (#7039)

RFC 9421の実装が提供されます。

@std/path@1.1.5

@std/path@1.1.5がリリースされています。

@std/pathがNode.jsで動作するように内部実装が調整されています (#7103)

@std/streams@1.1.1

@std/streams@1.1.1がリリースされています。

@std/streams/unstable-batch-stream

新規モジュールとして@std/streams/unstable-batch-streamが追加されています (#7110)

BatchStreamが提供されており、コンストラクタで指定されたサイズが満たされるまでチャンクが内部でバッファリングされます。

@std/testing@1.0.19

@std/testing@1.0.19がリリースされています。

Deno v2.8.0におけるタイマーAPIの変更に伴い、型定義が調整されています (#7127)