2026/04/13〜2025/04/19の最新情報

denoland/deno3-test1 DenoのGitHub Organizationで以下の2つのリポジトリが公開されています。 denoland/deno3-test1 denoland/deno3-test2 Deno v3に関連したものと思われ、まだ正式に機能が取り込まれるかどうかはわかりませんが、これらのリポジトリから読み取れる限りでは、Deno.tomlというファイルでパッケージのメタ情報の定義や依存関係の管理を行うアイデアが試されているようです。 Denoの直近の更新について 先週、Denoの main ブランチにマージされている変更の中から主要なものについて紹介いたします。 deno upgrade pr <number> deno upgradeコマンドで特定のPR向けにビルドされたバージョンへのアップグレードがサポートされています。 feat(upgrade): support installing from a PR #33252 現時点ではgh run downloadコマンドをベースに実装されているため、本機能の利用にはGitHub CLI (gh) がインストールされている必要あります。 $ deno upgrade --output ./deno-pr-33298 pr 33298 $ ./deno-pr-33298 --version deno 2.7.12+4c90c4d (canary, release, x86_64-unknown-linux-gnu) v8 14.7.173.19-rusty typescript 5.9.2 deno audit - Bulk Advisory Endpointへの移行 deno auditコマンドの内部実装においてBulk Advisory Endpoint (/-/npm/v1/security/advisories/bulk) へ移行する対応が行われています。 fix(audit): migrate to bulk advisory endpoint #33292 元々、Full Audit エンドポイント (/-/npm/v1/security/audits) というAPIが使われていましたが、直近のタイミングでこのBulk Advisory Endpointは廃止されたようで、その影響を受けての対応のようです。...

April 19, 2026

2026/04/06〜2025/04/12の最新情報

Deno v2.7.12 Deno v2.7.12がリリースされています。 OpenTelemetry OTEL_EXPORTER_OTLP_TIMEOUT環境変数が追加されています (#33159) バックエンド向けに Signal を送信する際のタイムアウトをミリ秒単位で設定できます (デフォルトは10秒) deno repl タブ補完の実装においてLSPの使用を廃止し、CDP (Runtime.getPropertiesなど) のみを使用するように変更されています (#33119) これにより起動速度などの改善が期待されそうです。 パーミッション --deny-netにおいてIPv4-mapped IPv6 addressなどが意図せず許可されてしまうことがある問題が修正されています (#33203, #33223) Node.js互換性の改善 node:http 内部クラスであるHTTPParserがllhttpを使用して再実装されています (#33202) 内部的な変更ではあり、まだ実際に使用されているわけではなさそうですが、今後、HTTP関連の互換性がさらに改善されそうです。 node:net connect()のfdオプションのサポートが追加されています (#33150, #33155, #33136) また、ServerやSocketのref()メソッドが動作するように改善されています (#33174) node:child_process spawnSync()でtimeout及びkillSignalオプションがサポートされています (#32810) spawn()のstdioオプションにおいてファイルディスクリプターの指定がサポートされています (#33140) また、ChildProcess.stdio[fd]などに設定されるオブジェクトがRustで再実装されています (#33165) node:dns getDefaultResultOrder()が追加されています (#33197) node:fs open()やopenSync()がridではなくファイルディスクリプターを返却するように改善されています(#33039) その他のfdを引数として受け取る各種APIも rid ではなく実際のファイルディスクリプターを考慮するように改善されています。 links deno.jsonのlinksに指定されたnpmパッケージがpeerDependenciesを定義しており かつ deno.lockが存在している場合にエラーが発生してしまう問題が修正されています (#33143) WebAPI GPUQueue#writeBuffer() GPUQueue#writeBuffer()のdata引数におけるArrayBufferの指定がサポートされています (#33152) Worker Workerにおけるメモリリークが修正されています (#33200)

April 12, 2026

2026/03/30〜2025/04/05の最新情報

Deno v2.7.10 & Deno v2.7.11 Deno v2.7.10とDeno v2.7.11がリリースされています。 deno upgrade deno upgradeコマンドでalphaとbetaチャネルがサポートされています (#33098) RCバージョンへのアップグレードと同様に、deno upgradeの引数にalphaもしくはbetaを指定することでアップグレードが可能です。 ただし、まだ alpha 及び beta バージョンのリリースは実施されていません。今後、実際にリリースが行われれば、利用できるようになりそうです。 deno compile deno.jsonにおいてcompile.include及びcompile.excludeフィールドがサポートされています (#33024) 効果はそれぞれ--include及び--excludeオプションと同様です。 deno lsp Import mapsにおいて以下のようにディレクトリへのマッピングが定義されている状態でdeno lspがimportの補完をする際に、相対パス形式だけでなく@/形式のパスに対する補完候補も表示してくれるように改善されています (#33048) { "imports": { "@/": "./src/" } } Permissoins Windowsにおいて、--allow-readなどのパーミッションオプションにおけるパスの大文字・小文字を区別せずに取り扱うように挙動が変更されています (#33073) Node.js互換性の改善 links deno.jsonのlinksフィールドにおいてまだnpmレジストリに公開されていないnpmパッケージが参照されている場合にエラーが発生してしまう問題が修正されています (#33021) BYONM --node-modules-dir=manual (BYONM) が適用されている場合、Node.js組み込みモジュールと同名のパッケージ (例: eventsパッケージ) が読み込めない問題が修正されています (#32865) node:child_process spawnSync()の戻り値として返却されるオブジェクトにpidプロパティーが設定されるように改善されています (#33081) node:crypto 下記の改善が実施されています: createCipher()/createDecipher()でchacha20-poly1305がサポート (#33084) Verify#verify()への秘密鍵の指定がサポート (#33083) node:worker_threads exitイベントがmessageイベントよりも先に発火されてしまうことがある問題が修正されています (#32623)...

April 5, 2026

2026/03/23〜2025/03/29の最新情報

Deno v2.7.8 & Deno v2.7.9 Deno v2.7.8とDeno v2.7.9がリリースされています。 OpenTelemetry OTEL_EXPORTER_OTLP_PROTOCOL=console OTEL_EXPORTER_OTLP_PROTOCOL=consoleがサポートされています (#32717)。これが指定されると、シグナルがOpenTelemetryバックエンドではなく標準エラー出力に書き込まれます。 使用例として、DENO_AUDIT_PERMISSIONS=otelと併用することで、アプリケーションが要求したパーミッションをログに出力することができます: $ cat main.js console.info(Deno.env.get("FOO")); $ OTEL_DENO=true \ DENO_AUDIT_PERMISSIONS=otel \ OTEL_EXPORTER_OTLP_PROTOCOL=console \ deno run -E=FOO main.js LOG [INFO] 2026-03-29T07:33:36.045Z "env: FOO" scope: deno@2.7.9 deno.permission.type: "env" deno.permission.value: "FOO" deno.permission.stack: "" LOG [INFO] 2026-03-29T07:33:36.046Z "foo " scope: deno@2.7.9 log.iostream: "stdout" http.route Deno.serve()のハンドラー内からtrace.getActiveSpan()で取得したSpanにおいてhttp.route属性の設定がサポートされています (#32720) deno install -g jsrパッケージのインストールが改善 deno install -gでjsrパッケージをインストールする際に、そのパッケージが提供するdeno....

March 29, 2026

2026/03/16〜2025/03/22の最新情報

Deno v2.7.6 & Deno v2.7.7 Deno v2.7.6とDeno v2.7.7がリリースされています。 --cpu-prof --cpu-prof-flamegraphオプションが追加されています (#32572, #32716) フレームグラフをSVG形式で出力してくれます: $ deno run --cpu-prof-flamegraph --cpu-prof-name=cli.cpuprofile --cpu-prof-dir=cpu-profile -R src/cli.ts $ open cpu-profile/cli.svg --cpu-prof-flamegraphオプションの公式ドキュメントも追加されています (denoland/docs#2975) また、--cpu-profオプション関連の出力に対してソースマップが適用されるよう改善されています (#32634) deno eval --extオプションを指定しなくても、与えられたソースコードがCJSかESMかを自動的に判定してくれるように改善されています (#32472) シグナル --watchオプション使用時にファイルの変更もしくはCtrl+Cの入力が検出された際に、SIGTERMシグナル向けのリスナーが呼ばれるように挙動が改善されています (#32564) また、Windowsで下記改善が実施されています (#32689) Deno.addSignalListener()でSIGQUITとSIGTERMがサポート Deno.kill()でSIGQUIT/SIGKILL/SIGTERM/SIGABRTがサポート OpenTelemetry console.log()やconsole.error()などの第1引数にErrorオブジェクトが渡された場合、Semantic Conventionsに従って Log レコードに下記の属性が追加されるように改善されています (#32726) exception.type exception.message exception.stacktrace また、Log レコードにlog.iostream属性を設定する改善も実施されています (#32723)。console.error()またはconsole.warn()によるログの出力の場合はstderr, それ以外の場合はstdoutが設定されます。 また、Attributes への配列の指定がサポートされています (#32748) Node.js互換性の改善 deno install 書き込み権限が付与されていない実行可能ファイル (bin) を配布するnpmパッケージのインストールに失敗してしまう問題が修正されています (#32632) node:util 下記APIが実装されています (#32793):...

March 22, 2026

2026/03/09〜2025/03/15の最新情報

Deno v2.7.5 Deno v2.7.5がリリースされています。 --cpu-prof --cpu-prof, --cpu-prof-dir, --cpu-prof-name, --cpu-prof-interval, 及び--cpu-prof-mdオプションが追加されています (#31909) あわせて公式ドキュメントの追加も実施されています (docs: add CPU profiling section to debugging page (#2962)) --cpu-profオプションを指定すると、CPUプロファイラーが有効化され、プロセス終了時にデフォルトでカレントディレクトリにCPUプロファイルが保存されます (デフォルトで CPU.<timestamp>.<pid>.cpuprofile という名前で保存されます。--cpu-prof-dirオプションで出力先ディレクトリ、--cpu-prof-nameオプションでファイル名をカスタマイズ可能です) $ deno run --cpu-prof --cpu-prof-name=cli.cpuprofile -R src/cli.ts $ file cli.cpuprofile cli.cpuprofile: JSON data また、--cpu-prof-md オプションを指定すると、プロファイル結果をMarkdown形式で出力してくれます。 $ deno run --cpu-prof-md --cpu-prof-name=cli.cpuprofile -R src/cli.ts $ cat cli.md # CPU Profile | Duration | Samples | Interval | Functions | | --- | --- | --- | --- | | 414....

March 15, 2026

2026/03/02〜2025/03/08の最新情報

Deno v2.7.2/v2.7.3/v2.7.4 以下のバージョンのリリースが実施されています。 Deno v2.7.2 Deno v2.7.3 Deno v2.7.4 deno install パフォーマンス改善 並列性の改善によりdeno installによるnpmパッケージのインストール速度が改善されています (#32416) パッケージによっては4倍以上の改善がなされるケースもあるようです。 https://x.com/rough__sea/status/2029531069435830602によると、この改善により各種パッケージマネージャー内において Bun に次ぐ速度が達成されているようです。 peerDependencies peerDependenciesの解決が改善されており、あるパッケージが複数のパッケージからpeerDependenciesとして依存されている場合、意図せずそのパッケージの複数のバージョンがインストールされてしまうことがある問題への改善が実施されています (#32358) deno compile --self-extracting extraction directory の名前が変更されています (#32329) 変更前: <実行可能ファイル>.fs/<ハッシュ> 変更後: .<実行可能ファイル>/<ハッシュ> (.fsが削除され、隠しファイルとして扱われるよう.がプレフィックスとして付与されています) deno jupyter 以下の改善が実施されています (#32359) Denoカーネルでinterrupt_requestメッセージがサポートされています shutdown_requestに対して、Denoカーネルがshutdown_replyを返却するように改善されています node:crypto 下記 API が実装されています: X509Certificate の下記API (#32270) checkIP() checkIssued() checkPrivateKey() infoAccess raw subjectAltName toLegacyObject() toString() verify() KeyObject#equals() (#32409) また、下記改善も実施されています:...

March 8, 2026

2026/02/23〜2025/03/01の最新情報

Deno v2.7 Deno v2.7.0がリリースされました。 以下のページに変更内容をまとめているため、よろしければ参照ください: Deno v2.7 denoland/deno_coreがアーカイブ denoland/deno_coreがアーカイブされるようです: chore: archive repo, point to denoland/deno (denoland/deno_core#1314) deno_coreのコードはDeno本体のリポジトリへ統合されており、今後はDeno本体と合わせて開発されてゆくようです: chore: merge deno_core repo into main repo (denoland/deno#32353)

March 1, 2026

Deno v2.7

はじめに Deno v2.7がリリースされました。 この記事では主な変更点などについて紹介します。 deno compile --self-extracting deno compileコマンドに--self-extractingオプションが追加されています (#32227) 例えば、以下のファイルがあったとします。 main.js: import { readData } from "./read_data.js"; console.info(await readData()); read_data.js: export async function readData() { const data = await Deno.readTextFile(import.meta.dirname + "/data.txt"); return data; } data.txt: Hello, Deno! この状態で--self-extractingを指定して実行可能ファイルを作成します。 $ deno compile --self-extracting --output foo -R=data.txt --include=data.txt main.js そして、作成された実行可能ファイルを実行します。 $ ./foo Hello, Deno! すると、実行可能ファイルと同一ディレクトリに<実行可能ファイル>.fs/<ハッシュ>ディレクトリが作成されます (<ハッシュ>はDenoのバージョン及び各種ファイルの内容から計算されます) $ ls foo.fs/6b768ca39a1ab3f1 data.txt main....

March 1, 2026

2026/02/16〜2026/02/22の最新情報

Deno v2.7のリリースタイミングについて Deno公式のXアカウントにて、今週にDeno v2.7のリリースを計画している旨について発表されています。 直近でTemporal APIの安定化 (#31928) や package.jsonにおけるoverridesのサポート (#32073) などがマージされており、これらがv2.7にてリリースされるものと思われます。 Deno v2.6.10 Deno v2.6.10がリリースされています。 deno install --global --compile deno install --globalで--compileオプションがサポートされています (#32046) 指定されたエントリーポイントをインストールする際にdeno compileを適用して実行可能ファイルを作成してくれます。 $ deno install --global --compile -ER npm:cowsay $ cowsay hi ____ < hi > ---- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || || deno install deno install/deno add/deno removeの実行時に、不要なnpmパッケージをnode_modulesから削除してくれるよう挙動が改善されています (#32058) SSLKEYLOGFILE SSLKEYLOGFILE環境変数がサポートされています (#31867)...

February 22, 2026