2026/01/26〜2026/02/01の最新情報

Deno v2.6.7 Deno v2.6.7がリリースされています。 JSR - @jsrスコープの取り扱いの変更 @jsrスコープのnpmパッケージがJSRから取得されるよう挙動が変更されています (#31925)。具体的には、以下を実行すると@uki00a/deno-json-lintがインストールされます。 # `npm:@jsr/*` は registry.npmjs.org からダウンロードされます $ deno install npm:@jsr/uki00a__deno-json-lint $ cat deno.json | jq '.imports["@jsr/uki00a__deno-json-lint"]' "npm:@jsr/uki00a__deno-json-lint@^0.4.0" デフォルトではhttps://registry.npmjs.org からパッケージがダウンロードされますが、 JSR_NPM_URL環境変数または.npmrcによって設定変更が可能です。 Deno.cron() - 外部サーバーへのタスク管理の移譲がサポート (DENO_UNSTABLE_CRON_SOCK) Deno.cron()によるジョブ管理をソケットを介して外部サーバーへ移譲する機能が実装されています (#31952) この機能はDENO_UNSTABLE_CRON_SOCKにソケットへのURLを指定することで有効化されます (例: unix:/path/to/cron.sock)。指定されたソケットとの間でJSON形式のメッセージを交換し合うことでジョブの管理が行われます。 DenoプロセスでDeno.cron()が呼ばれると、ソケットに対してタスクの登録用メッセージが送信されます ({ "kind":"register", "crons": [{ "name": "<task-name>", "schedule": "<cron-expression>" }] }) サーバーはソケットに対してタスクの実行を指示するメッセージ ({ "kind": "invoke" }) を書き込むことで、そのメッセージを受信したDenoプロセスで指定されたタスクが実行されます。 Denoプロセスでタスクの実行が完了すると、ソケットに対して実行完了メッセージが書き込まれます ({ "kind": "result", "name": "<task-name>", "success": true }) おそらく、主にDeno Deploy向けの機能であると推測されますが、上記メッセージを処理するサーバー実装を用意することで、独自のジョブ管理の仕組みが実装できそうです。 Node.js互換性の改善 node:test 下記のモック関連APIが実装されています (#31954)...

February 1, 2026

2026/01/19〜2026/01/25の最新情報

Deno v2.6.6 Deno v2.6.6がリリースされています。 deno task deno_task_shellが0.26.2から0.28.0へアップデートされています (#31913) https://github.com/denoland/deno_task_shell/releases/tag/0.27.0 https://github.com/denoland/deno_task_shell/releases/tag/0.28.0 これによりshoptがサポートされています (denoland/deno_task_shell#164)。現状では以下のオプションがサポートされています (デフォルトでは failglob 及び globstar が有効化されています) failglob nullglob globstar また、setコマンドも実装されています。現状では pipefail オプションの設定がサポートされています。 これらの改善に関する公式ドキュメントも追加されています (denoland/docs#2855) deno check --unstable-tsgo deno check --unstable-tsgoによる型チェックで typescript-goをダウンロードする際にプログレスバーが表示されるよう改善されています (#31893) Inspector UNSTABLE_INSPECTOR_WS_EVENTS UNSTABLE_INSPECTOR_WS_EVENTSという環境変数が追加されています (#31901)。この環境変数が指定されると、Inspector (--inspect) において /ws/events という WebSocket エンドポイントが有効化されます。 現時点では--watchとの併用が想定されており、監視対象のファイルが変更された際に、WebSocket クライアントに対してtype: "restart"というイベントが通知されます ホスト名またはポートの省略がサポート --inspect/--inspect-brk/--inspect-waitオプションにおいてホスト名またはポートの指定が省略できるよう改善されています (#31881) ホスト名を省略した場合、127.0.0.1がデフォルトで使用されます ポートを省略した場合、9229がデフォルトで使用されます OpenTelemetry Deno.cron()が計装されています (#31916) OpenTelemetryサポートが有効化されていれば、Deno.cron()に渡したハンドラーが自動的にdeno.cronという名前のSpanでラップされます。 Crypto SHA3-256/SHA3-384/SHA3-512がサポートされています (#31668) node:assert node:assertを@std/assertベースではなくNode.js 24.12.0本体の実装をベースとすることで、互換性を改善するための対応が実施されています (#31821) node:perf_hooks PerformanceObserverが実装されています (#31875)...

January 25, 2026

2025/12/22〜2025/12/28の最新情報

Happy Eyeballsのサポートについて まだマージはされていませんが、Deno.connect()やDeno.connectTls()でHappy EyeballsをサポートするPRが作成されています。 feat(ext/net): implement Happy Eyeballs for Deno.connect and Deno.connectTls #31726 c057103時点における実装ではHappy Eyeballsはデフォルトで有効化されており、必要に応じてautoSelectFamilyオプションにfalseを指定することで無効化できるようです。指定されたホストに対して複数のアドレスが解決された場合、まずIPv6アドレスに対する接続を試み、その後、デフォルトで250ミリ秒後 (autoSelectFamilyAttemptDelayオプションでカスタマイズ可能) にIPv4アドレスの方へ並行で接続を試みるよう実装されているようです。 deno sandboxコマンドのドキュメント 先週に紹介したdeno sandboxコマンドに関する公式ドキュメントが追加されています。 Sandbox CLI (denoland/docs#2795) deno_std のリリース deno_std のリリースが行われています (release-2025.12.24, release-2025.12.25) @std/uuid@1.1.0 @std/uuid@1.1.0がリリースされています。 UUIDv7のサポートが安定化 UUIDv7のサポートが安定化されています (#6897) 今後は @std/uuid/unstable-v7 ではなく @std/uuid/v7 から利用できます。 @std/async@1.0.16 @std/async@1.0.16がリリースされています。 @std/async/unstable-semaphoreが追加 Semaphoreクラスが提供されています (#6894) @std/streams@1.0.16 @std/streams@1.0.16がリリースされています。 @std/streams/unstable-capped-delimiter-stream @std/streams/unstable-capped-delimiter-streamという新規モジュールが追加されています (#6890) CappedDelimiterStreamが提供されており、既存のDelimiterStream (@std/streams/delimiter-stream) との違いとして、デリミターで区切られた個々のフィールドのサイズが一定以上の大きさを持つようなケースでの使用が想定されています。 @std/http@1.0.23 @std/http@1.0.23がリリースされています。 @std/http/negotiation 戻り値の型に関する推論を賢くするためにaccepts(), acceptsEncodings(), 及びacceptsLanguages()に型パラメーターが追加されています (#6876) @std/ini@1.0.0-rc.9 @std/ini@1.0.0-rc.9がリリースされています。 @std/ini/parse parse()にreviver()オプションが指定された場合、reviver()の第2引数に数値や真偽値が常に文字列として渡される問題が修正されています (#6887) @std/path@1.1.4 @std/path@1....

December 28, 2025

2025/12/15〜2025/12/21の最新情報

Deno v2.6.1 Deno v2.6.1がリリースされています。 deno x - Windows向けの改善 Deno v2.6.0で実装されたdeno xコマンドについて、Windows向けの改善が実施されています。 まずWindowsにおいてdxコマンドが実行できなかった問題が修正されています (#31573) また、Winodwsでdeno xによってネイティブバイナリーを実行できるようにする改善が実施されています (#31551) deno add - jsrパッケージのダウンロードに関する挙動の修正 deno addコマンドでjsrパッケージを追加した際に、該当パッケージ内における type-only import 先のモジュールがダウンロード対象から除外されてしまう問題が修正されています (#31552) deno deploy - deploy.appの省略がサポート deno.jsonのdeployフィールドにおいて、appフィールドの設定を省略できるよう改善されています (#31567) --require/--preloadに関する修正 --require及び--preloadオプションがdeno bundleなどの非ランタイムコマンドでも利用できていた問題が修正されています (#31614) node:sqlite 様々な改善が実施されています (#31515) DatabaseSync#location()が実装 DatabaseSyncでtimeoutオプションがサポート DatabaseSyncのisOpen及びisTransactionプロパティーが実装 DatabaseSyncコンストラクタ及びbackup()のpath引数においてURL及びBufferによる指定がサポート Stream関連の型定義の改善 Deno v2.6.0におけるStreamの移譲のサポートに合わせて、MessagePort#postMessage()のtransferオプションなどで、ReadableStream/WritableStream/TransformStreamを受け入れるよう型定義が改善されています (#31586) Deno v2.6.2 Deno v2.6.2がリリースされています。 deno sandbox Deno Sandboxesと連携するためのdeno sandboxコマンドが追加されています (#31568, #31657) 内部的には@deno/deployパッケージ経由で@deno/sandboxパッケージが実行されており、deno sandbox createコマンドによるサンドボックスの作成、deno sandbox execコマンドによるサンドボックス内でのコマンドの実行などがサポートされているようです (参考: @deno/deploy@0.0.75/sandbox.ts) OpenTelemetry 下記APIが動作するよう、Baggage などに関する実装が修正されています (#31620)...

December 21, 2025

2025/12/08〜2025/12/14の最新情報

Deno v2.6 Deno v2.6.0がリリースされました。 以下のページに変更内容をまとめているため、よろしければ参照ください: Deno v2.6 Deno Sandboxes Denoの公式ドキュメントにDeno Sandboxesに関するページが追加されています。 initial commit for sandboxes pages #2754 Deno Sandboxesでは、公式SDK (jsr:@deno/sandbox) を介してDeno Deployのインフラ上で即席のLinux VMを立ち上げ、そこでコードやコマンドの実行など様々なことを行うことができるサービスのようです。 Deno Sandboxesについては、Deno Advent Calendarで本日に公開された@okutann88さんの記事でも解説されています。 @deno/sandbox による任意コード実行と強制停止

December 14, 2025

2025/11/24〜2025/11/30の最新情報

Deno Deployのアップデート Deno Deployのchangelogが更新されています。 2025-11-24 Deploy changelog (denoland/docs#2742) このアップデートでは--tunnelオプションについて言及されています。このオプションにより、Deno Deploy が発行した一時的なパブリックドメインからローカルアプリケーションへのアクセスが行えるようです。また、--tunnelオプションに関する公式ドキュメントも追加されています (#2736) 全てのOrganizationで請求が有効化されたようです。デフォルトではFreeプランが使用されるとのことです。 また、Googleアカウントを使用したDeno Deployへのサインインがサポートされています。 Deno DeployがOIDCトークンの発行をサポートしたようです。関連パッケージとしてjsr:@deno/oidcが公開されています。 それ以外にも、カスタムのTLS証明書のサポートやビルドに関するタイムアウトやメモリ割当のカスタマイズなど、様々な改善が実施されているようです。 @lowlighter/vercel-deno Vercel上でDenoを動作させるための@lowlighter/vercel-denoパッケージが公開されています。 リポジトリ: https://github.com/lowlighter/vercel-deno パッケージ: @lowlighter/vercel-deno vercel-community/denoがしばらくメンテナンスされていないことや、現時点における最新のDenoの規約 (deno serveなど) に追従することなどを目的に開発されているようです。

November 30, 2025

2025/10/20〜2025/10/26の最新情報

Denoの直近のアップデート typescript-goのサポートがマージ (--unstable-tsgo) 以前に紹介した、deno checkコマンドでtypescript-goをサポートするPRがマージされています (#30920)。まだリリースはされていませんが、canary バージョンで動作を試すことが可能です。 deno checkを実行する際に--unstable-tsgoオプションを指定することで、まずdenoland/typescript-goが${DENO_DIR}/dlへダウンロードされます。 その後、--apiオプションを指定して起動されたtsgoとプロセス間で通信することによって型チェックが実行されているようです (microsoft/typescript-go/cmd/tsgo/main.go#L19-L20) $ deno check --unstable-tsgo mod.ts 詳細はdenoland/deno/docs/tsgo.mdにて解説されています。 deno.jsonでのminimumDependencyAgeのサポート 先週に紹介した、deno.jsonでのminimumDependencyAgeのサポートがマージされています (#31007) さらに、特定のパッケージを対象から除外できるよう、minimumDependencyAgeにおいてオブジェクト形式での設定がサポートされています: feat(unstable): ability to exclude packages from minimum dependency age constraint #31031 minimumDependencyAge.ageフィールドに猶予期間、minimumDependencyAge.excludeフィールドに適用対象から除外したいパッケージを指定できます。 { "minimumDependencyAge": { "age": "PT5H", "exclude": ["npm:preact"] } } deno auditコマンド 以前に紹介した、deno auditコマンドの実装がマージされています。 feat(unstable): add deno audit subcommand #30966 npmレジストリの Full Audit エンドポイント (/-/npm/v1/security/audits) を利用したパッケージの検査がサポートされています。 内部的には firewall-api.socket.dev を使用した検証の実装も含まれているようですが、現時点ではまだユーザーから利用するための手段は提供されていなさそうです。 ecosystem_compat_test 内部的な変更ではありますが、日次でnpm/ yarn/pnpmをDenoで実行し、互換性を検証する仕組みが導入されています:...

October 26, 2025

2025/09/29〜2025/10/05の最新情報

Deno v2.5.3 Deno v2.5.3がリリースされています。 パーミッションブローカー (DENO_PERMISSION_BROKER_PATH) 先週に紹介したパーミッションブローカーがリリースされました (#30826) 先週に紹介した時点からの差分として、追加で以下の改善が実施されています: レスポンスでreasonフィールドがサポート (#30902) 任意でこのフィールドに文字列を設定することで、権限が拒否された際にユーザーへ表示されるメッセージをカスタマイズできるようです。 Windows でのパーミッションブローカーのサポート (#30894) DENO_PERMISSION_BROKER_PATHに名前付きパイプへのパスを指定することで有効化できるようです。 deno check cloudflare:などのDenoがサポートしないURLスキームが検出されるとエラーが発生する問題が修正されています (#30904)。v2.5.2によるリグレッションであったようです (#30898) また、deno checkコマンドで--v8-flagsオプションがサポートされています (#30868) deno run --watchオプションが指定され かつ Deno.addSignalListener()によってSIGINTへのリスナーを登録してる場合、プロセスがSIGINTで終了しなくなる問題が修正されています (#30635) Deno API Deno.FsFile#stat()のパーミッションの見直し read: falseを指定して実行したDeno.open()から返却されたDeno.FsFileに対してstat()メソッドを呼んだ際に、該当ファイルに対する--allow-read権限が要求されるよう挙動が変更されています (#30876) Deno.FsFile#utime()のパーミッションの見直し write: falseを指定して実行したDeno.open()から返却されたDeno.FsFileに対してutime()メソッドを呼んだ際に、該当ファイルに対する--allow-write権限が要求されるよう挙動が変更されています (#30872) Node.js互換性の改善 node:sqlite --allow-allが指定されている場合のみ ATTACH DATABASE の実行がサポートされました (#30763) node:timers/promises setTimeout()でsignalオプションがサポートされています (#30855) bundleDependencies bundleDependenciesおよびbundledDependenciesの両方が定義されたnpmパッケージをインストールするとエラーが発生する問題が修正されています (#30875) Tunnelling Deno v2.4.1で実装された--connectedオプションが--tunnelにリネームされています (#30786) typescript-goとの統合について (--unstable-tsgo) まだマージはされていないですが、deno checkでtypescript-goを利用できるようにするPRが作成されています: feat(unstable): typescript-go integration for deno check #30920 c0fde0e81ec6c7b5e5e7512b2958be93bb3e41fbの時点においては、--apiオプションを指定して子プロセスとして起動したtsgoとプロセス間で通信することによって統合が実現されているようです。...

October 5, 2025

2025/09/22〜2025/09/28の最新情報

Deno v2.5.2 Deno v2.5.2がリリースされています。 deno lsp deno lspでdescribe()/it()で定義されたテストの検出と実行がサポートされています (#30802) deno bundle deno bundle --watchにHTMLエントリーポイントを指定している場合、変更の検出時に出力されたHTMLファイルが適切にビルドされない問題が修正されています (#30790) また、deno bundleで--frozenのサポートが追加されています (#30825) deno coverage Worker内のコードに対してもカバレッジが計測されるよう改善されています (#30807) TypeScript compilerOptions.pathsのサポート deno checkコマンドでcompilerOptions.pathsがサポートされています (#30766) Uint8Arrayに Base64/Hex 関連のAPIに関する型定義が追加 Deno v2.5.0におけるV8のアップデートに伴い、下記APIの型定義が追加されました (#30686): Uint8Array#toBase64() Uint8Array#setFromBase64() Uint8Array#toHex() Uint8Array#setFromHex() Uint8Array.fromBase64() Uint8Array.fromHex() Promise<undefined> から Promise<void> への変更 TypeScript 公式の型定義に合わせて、以下の各プロパティーの型定義が Promise<undefined> から Promise<void> へ変更されています (#30820): ReadableStreamGenericReader#closed WritableStreamDefaultWriter#closed WritableStreamDefaultWriter#ready WebTransport#ready WebSocket Deno 2.5.1からWebSocketの接続時にUser-Agentヘッダーが送信されなくなっていた問題が修正されています (#30758) node:fs statfs()でpath引数にBufferの指定がサポートされています (#30662) また、readFile()でencoding: "binary"の指定時にStringを返すよう挙動が修正されています (#30830) node:crypto timingSafeEqual()にArrayBufferのサポートが追加されています (#30773)...

September 28, 2025

2025/08/25〜2025/08/31の最新情報

Deno v2.5 向けの機能の追加について Deno 2.5.0 向けのマイルストーンに関連して、新機能を実装するためのPRがいくつか作成されているため、紹介します。 Deno.testへのbefore*/after*フックのサポート まだマージはされていませんが、Deno.test配下に Vitest や Jest ライクなbefore*/after*APIをサポートするPRが作成されています: feat(test): Add setup and teardown APIs to Deno.test API #30504 af75749のコミットの時点では、以下の4つのフックが実装されています: Deno.test.beforeAll() Deno.test.afterAll() Deno.test.beforeEach() Deno.test.afterEach() Deno.ChildProcess.{stdout,stderr}へのResponseライクな問い合わせメソッドの追加 Deno.ChildProcessのstdout及びstderrプロパティーにおいて、Responseライクに出力内容を取得するためのユーティティーメソッドを追加するPRが作成されています: feat(ext/process): add collector utilities to ChildProcess.stdout & ChildProcess.stderr #30552 const command = new Deno.Command(Deno.execPath(), { args: ["json_reference"], stdout: "piped", }).spawn(); const json = await command.stdout.json(); 852714eのコミットの時点においては、以下の4つのメソッドが実装されています: arrayBuffer bytes json text Fresh v2 関連のアップデート @fresh/init@2....

August 31, 2025