Fresh v2.3

Fresh v2.3がリリースされています。詳細については下記ページを参照いただければと思います。

deno desktopコマンドについて

まだ正式に導入されるかどうかはわかりませんが、deno desktopというコマンドを実装するPRが作成されています:

名前の通りデスクトップアプリケーションを作成することを想定したコマンドのようです。複数のバックエンドのサポート (webview, Chromium など) やフレームワーク (Next.js, Fresh など) の自動検出, アプリケーションの自動アップデートなど、様々な機能が検討されているようです。

Deno v2.7.13

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

deno upgrade

先週に紹介したdeno upgrade pr <number>が導入されています (#33252)

deno audit

先週に紹介したBulk Advisory Endpointへの移行が導入されています (#33292)

deno doc --html

jsx/tsxコードブロック向けのハイライトがサポートされています (#33255)

Node.js互換性の改善

node:repl

node:replが実装されています (#32799)

Node.jsのテストスイートのうち1/3近くがパスしている状態のようです。

node:http

Deno v2.7.12で内部的に導入されていたllhttpベースのHTTPParserが正式に採用開始されています (#33208)

また、globalAgentの上書きがサポートされています (#33337)

node:http2

createServer()などにおけるstrictSingleValueFields: falseの指定がサポートされています (#33332)

node:tls

connect()socketオプションにおける任意のストリームの指定やconnect()/Server#listen()におけるUnixドメインソケットのサポートが実施されています (#33331)

Node-API

node_api_post_finalizer()が実装されています (#33260)

また、本バージョンでは下記APIが実装されています (#33281)

  • napi_open_handle_scope()
  • napi_close_handle_scope()
  • napi_open_callback_scope()
  • napi_close_callback_scope()

ただし、これら4つのAPIはその後、#33363にてRevertされており、正式に利用できるようになるのはもう少し先になるかもしれません。

node:child_process

spawnSync()stdioオプションで3番目以降の要素 (stdin/stdout/stderr以外のfd) の指定がサポートされています (#33341)

deno_stdのリリース

deno_stdのリリースが実施されています (release-2026.04.20)

@std/async@1.3.0

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

@std/async/unstable-lazy

Lazyクラスのget()メソッドにAbortSignal (signalオプション) のサポートが追加されています (#7084)

また、Lazy#peek()の戻り値の型が変更され、ユーザーが状態をより正確に問い合わせられるように改善されています。

@std/async/unstable-channel

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

Channelクラスが提供されており、複数のタスク間で値のやり取りをしたいケースでの使用が想定されています。

@std/async/unstable-debounce

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

通常のdebounceとの違いとしてsignalオプション (AbortSignal) によるキャンセルがサポートされています。

@std/async/unstable-pool-settled

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

pooledMapSettled()が提供されています。pooledMap()Promise.all()に相当する振る舞いを提供するのに対し、pooledMapSettled()Promise.allSettled()に相当する振る舞いをしてくれます。

@std/async/unstable-throttle

throttle()timeframe引数において関数の指定がサポートされています (#7002)

前回の実行における経過時間に基づいて動的にタイムフレームを計算したい場合に利用することが想定されているようです。

@std/async/unstable-pollの安定化

@std/async/unstable-pollが安定化されています (#7060)

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

@std/async/unstable-all-keyedの安定化

@std/async/unstable-all-keyedが安定化されています (#7058)

今後は@std/async/all-keyedから利用可能です。

@std/cli@1.0.29

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

@std/cli/unstable-get-cursor

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

askForCursorPositionSync()が提供されており、ターミナル上の現在のカーソル位置を問い合わせることができます。

@std/collections@1.1.7

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

@std/collections/unstable-interleave

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

interleave()が提供されています。与えられた複数の配列をマージし、単一の配列を返却してくれます。

@std/crypto@1.1.0

@std/crypto@1.1.0がリリースされています。

@std/crypto/timing-safe-equal

timingSafeEqual()で大きさの異なるデータが渡された際にfalseを返却するのではなくTypeErrorthrowするように挙動が変更されています (#7042)

@std/crypto/aes-gcm

新規モジュールとして@std/crypto/aes-gcmが追加されています (#7089, #7012)

AES-GCMを用いた暗号化/復号におけるボイラープレートを削減してくれます。

@std/data-structures@1.0.11

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

@std/data-structures/unstable-deque

新規モジュールとして@std/data-structures/unstable-dequeが追加されています (#7019, #7083)

Dequeの実装が提供されます。

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

@std/data-structures/unstable-rolling-counterモジュールが追加されています (#7028)

@std/async/unstable-circuit-breakerの内部での利用が想定されて追加されたようです (#7036)

@std/http@1.1.0

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

@std/http/unstable-problem-details

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

RFC 9457をベースにcreateProblemDetailsResponse()及びparseProblemDetails()などのAPIが提供されています。

@std/http/unstable-server-sent-event-streamの安定化

@std/http/unstable-server-sent-event-streamが安定化されています (#7050)

今後は@std/http/server-sent-event-parse-streamから利用可能です。

@std/json@1.1.0

@std/json@1.1.0がリリースされています。

@std/json/unstable-canonicalizeの安定化

@std/json/unstable-canonicalizeで提供されていた各種APIが安定化されています (#7061)

今後は@std/json/canonicalizeからAPIを利用できます。

@std/regexp@1.0.2

@std/regexp@1.0.2がリリースされています。

@std/regexp/unstable-replace-all-async

新規モジュールとして@std/regexp/unstable-replace-all-asyncが追加されています (#7031)

replaceAllAsync()というAPIが提供されており、 外部リソースから非同期で取得した内容に基づいて文字列を置き換えを行いたいケースでの使用が想定されているようです (#7030)

@std/streams@1.1.0

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

@std/streams/unstable-to-bytesの安定化

@std/streams/unstable-to-bytesが安定化されています (#7043)

今後は@std/streams/to-bytesから利用できます。

@std/text@1.0.18

@std/text@1.0.18がリリースされています。

@std/text/unstable-truncate

新規モジュールの@std/text/unstable-truncateが追加されています (#7052)

truncate()というAPIが提供されており、文字列が指定された長さ以内に収まるように切り取ってくれます。

@std/xml@0.1.1

@std/xml@0.1.1がリリースされています。

XML 1.1がサポート

XML 1.1のサポートが追加されています (#7057)。parse()parseXmlStream()xmlVersionオプションが追加されており、1.1を指定することで利用できます。

@std/cache@0.2.3

@std/cache@0.2.3がリリースされています。

@std/cache/ttl-cache

TtlCache#set()の第3引数がnumber型からTtlCacheSetOptions型に変更されています (#7065)。TTLを調整したい場合はTtlCacheSetOptionsttlプロパティーを設定する必要があります。

またTTLをリセットせずに値を取得するためのTtlCache#peek() (#7070) や slidingExpirationオプションの追加 (#7046) などが実施されています。