2026/07/20〜2026/07/26の最新情報

Deno v2.9.4 Deno v2.9.4がリリースされています。 deno desktop React Routerが検出され かつ --hmrが指定された際に、React Routerのdevサーバーが起動されるように改善されています(#35900) deno add --minimum-dependency-age deno add/deno removeコマンドで--minimum-dependency-ageオプションがサポートされています (#36099)。 必要に応じて--minimum-dependency-age=0を指定することで、deno.jsonのminimumDependencyAgeを一時的に無効化できるようにするなどことが目的のようです。 Web Cache API データの保存先が変更 Web Cache APIにおいて、localStorageなどと同様に$DENO_DIR/location_dataディレクトリを使用するように変更されています (#36145)。$DENO_DIR/location_data/web_cache配下にデータが保存されます。 Node.js互換性の改善 node:worker_threads Deno v2.9で実装されたWeb Locks APIをベースにworker_threads.locksが実装されています (#35963) node:crypto createCipheriv()及びcreateDecipheriv()でchacha20がサポートされています (#36016) node:buffer Buffer#indexOf(), Buffer#lastIndexOf(), 及びBuffer#includes()のend引数がサポートされています (#35872) セキュリティ deno x deno xコマンドで--minimum-dependency-age=0オプション及びdeno.jsonのminimumDependencyAgeがサポートされています (#36025) Deno.umask() Deno.umask()及び process.umask() (node:process) が--allow-sys=umaskを要求するように挙動が変更されています (#36222) Deno.UnsafeWindowSurface Deno.UnsafeWindowSurfaceの作成時に--allow-ffiパーミッションが要求されるように挙動が変更されています (#36080) V8 Deno内部のV8が14.9から15.0へアップデートされています (#36098, https://github.com/denoland/rusty_v8/compare/v149.4.0…v150.2.0) QuickJS バックエンド 現時点ではまだマージされていませんが、QuickJS (正確にはQuickJS-ngというフォーク版が使用されるようです) をDenoのバックエンドとして利用できるようにする対応が試みられているようです: feat: add experimental QuickJS backend #36194 feat: deno on quickjs-ng engine #35849 いずれのPRにおいてもv8xをベースに実装されており、Deno本体のビルド時にV8またはQuickJSのいずれかを切り替えることができるようです。...

July 26, 2026

2026/07/13〜2026/07/19の最新情報

Deno v2.9.3 Deno v2.9.3がリリースされています。 deno add/deno install --no-save/--save-optional --no-save及び--save-optionalオプションが追加されています (#36039) --no-saveオプションが指定されると、package.json及びdeno.jsonは更新せずに、指定されたパッケージのインストール及びdeno.lockの更新のみが行われます。 --save-optionalオプションが指定されると、指定されたパッケージをインストールしつつ、 package.jsonの optionalDependenciesに該当パッケージが追加されます。 --min-dep-age --min-dep-ageオプションが追加されています (#35914) 実体は--minimum-dependency-ageオプションへの alias です。 deno compile --target aarch64-pc-windows-msvc deno compileコマンドで--target aarch64-pc-windows-msvcオプションがサポートされています (#36004) Deno v2.6.8にてWindows ARM64のサポートが追加されていたものの、--targetオプションではサポートされていなかったようです。 Deno.createHttpClient() Deno.createHttpClient()にhttp2MaxHeaderListSizeオプションが追加されています (#33194) HTTP/2のSETTINGS_MAX_HEADER_LIST_SIZEに相当します。 セキュリティ BYONM BYONM ("nodeModulesDir": "manual") の有効化時にrequire()にnode_modules/../path/to/file.jsのような形式のパスが指定されると、意図せず--allow-readの要求が迂回されてしまう問題が修正されています (#35882) パフォーマンス改善 crypto.randomUUID() crypto.randomUUID()のパフォーマンスが改善されています (#35953)。 初回の呼び出し時にあらかじめ128個分のUUIDを生成してプールしておき、以降の呼び出しにおいてはプールされたUUIDを返却することで、オーバーヘッドが削減されているようです。プールされているUUIDが尽きたら、再度、UUIDの生成が行われます。 ベンチマークによるとおおよそ2倍近くまでスループットが改善されているようです。 node:fs cp()において、一定条件を満たす場合のパフォーマンスが最適化されています (#35856) 特にrecursiveオプションが有効化された際の振る舞いが改善されており、macOSにおいて、可能な場合はclonefile()の使用を試みることによって大幅なパフォーマンス改善が試みられているようです。 node:sqlite StatementSync#all()パフォーマンスが改善されています (#35863)。行数が多い場合のパフォーマンスがNode.jsと同等以上にまで改善されているようです。 deno lint - graph-aware (cross-file) lint rules — prototype / RFC まだマージはされていませんが、PoCとしてdeno lintのプラグインシステムで複数のモジュールにまたがったLintルールを実装するための仕組みの開発が行われているようです。 feat(lint): graph-aware (cross-file) lint rules — prototype / RFC #35986 現時点 (2f4e00e) での実装としては、Deno....

July 19, 2026

2026/07/06〜2026/07/12の最新情報

Deno v2.9.2 Deno v2.9.2がリリースされています。 deno desktop --hmr - フレームワークとの統合 フレームワーク検出機能によってフレームワークが検出され かつ --hmrオプションが指定されている場合、該当フレームワークのdevサーバーが起動されるように改善されています (#35722, #35851)。ただし、まだすべてのフレームワークで本機能がサポートされているわけではなく、現状ではFreshと各種Viteベース (Nuxt, SvelteKitなど) のフレームワークのみがサポートされているようです。 React Router (フレームワークモード) のサポート deno desktop及びdeno compileのフレームワーク検出機能においてReact Routerのフレームワークモードがサポートされています (#35557)。@react-router/devパッケージの有無に基づいて検出されます。 公式ドキュメント: docs(desktop): document React Router support (#3361) opacity/transparent ウィンドウの透明度の調整がサポートされています (#35646)。 下記APIによって利用できます。 Deno.BrowserWindowOptionsのopacity及びtransparentオプション Deno.BrowserWindowのgetOpacity()及びsetOpacity()メソッド --exclude-unused-npm deno compileで提供されている--exclude-unused-npmオプションのサポートがdeno desktopコマンドにも追加されました (#35740) desktop.backend deno.jsonにおけるdesktop.backendフィールドの設定値が適用されない問題が修正されています (#35815) セキュリティ minimumDependencyAge deno.jsonのminimumDependencyAge.excludeにおいてワイルドカード形式によるパッケージ指定がサポートされています (#35746) { "minimumDependencyAge": { "age": 1440, "exclude": [ "jsr:@std/*" ] } } node:net Deno v2....

July 12, 2026

2026/06/29〜2026/07/05の最新情報

Deno v2.9.1 Deno v2.9.1がリリースされています。 deno check deno checkに--desktopオプションが追加されています (#35644) Deno v2.9で実装されたdeno desktop関連のAPIを使用したコードに対する型チェックが行えます。 deno desktop カスタムURLスキーム カスタムURLスキームの登録がサポートされています (#35466) deno.jsonのdesktop.deepLinksでURLスキームの一覧を定義できるようです。例えば、Linuxにおいては、desktop.deepLinksの設定値を元に.desktop ファイルのMimeTypeキーにx-scheme-handler/<scheme>を書き込んでくれるようです。 安定性の改善 deno desktopにおける各種バックエンドの実装を提供するlaufeyがv0.5.0へアップデートされています (#35663, #35566)。Windowsにおけるcef以外のバックエンドが動作しない問題の修正などが行われています (差分) また、Linux向けにパッケージングされたアプリケーションがうまく起動できない問題が修正されています (#35632, #35580, #35506) deno desktop .でdeno.jsonのdesktopプロパティーの設定がうまく適用されない問題も修正されています (#35660) deno bundle Deno v2.9で実装されたCSSモジュールへのサポートが追加されています (#35598) deno install dist-tag 経由でnpmパッケージの prerelease バージョンをインストール (例: prettier-plugin-tailwindcss@insiders) する際に、意図せず古いバージョンがインストールされてしまうことがある問題が修正されています (#35586) deno lsp LSPが.wasmモジュールの変更を監視し、最新の内容を反映してくれるように改善されています (#35560) node:net Server#listen()でUNIXドメインソケットサーバーを開始する際に--allow-write及び--allow-readが要求されるように挙動が変更されています (#35564) node:process reportAPIが公開されています (#35400) PerformanceObserver deno.window lib にPerformanceObserver関連の型定義が追加されています (#35640)。今まではdeno.workerでしか定義されていなかったようです。 deno_stdのリリース deno_stdのリリースが行われています: release-2026.06.30 release-2026.07.03 @std/async@1.5.0 @std/async@1....

July 5, 2026

2026/06/22〜2026/06/28の最新情報

Deno v2.9 Deno v2.9.0がリリースされました。 以下のページに変更内容をまとめているため、よろしければ参照ください: Deno v2.9

June 28, 2026

2026/06/15〜2026/06/21の最新情報

Denoの直近の変更について 直近でDeno 2.9向けと思われるPRがいくつかマージされているため紹介します。 deno desktopコマンド 以前に紹介したdeno desktopを実装するPRがmainブランチにマージされています: feat: deno desktop subcommand (denoland/deno#33441) 以下のいずれかのバックエンドを切り替えることができるようです: cef (Chromium Embedded Framework) webview raw rawバックエンドはユーザーがWebベースのエンジン (cef / webview) を使わずに独自にレンダリングをカスタマイズしたい場合に使うことが想定されているようです。 また--hmrオプションによるHMRのサポート、Deno.serve()との統合、bindings[name]()によるDenoランタイムからバックエンドへの関数の公開、alert()/confirm()などによるネイティブポップアップの表示、NotificationAPIによる通知、Deno.BrowserWindow/Deno.Tray/Deno.dock/Deno.MenuItem/Deno.autoUpdate()などのAPI、フレームワークの自動検出などがサポートされているようです。 公式ドキュメントもすでに公開されており、Deno 2.9にてリリースされる予定のようです: docs: add deno desktop reference page (denoland/docs#3085) package-lock.json/pnpm-lock.yaml/yarn.lock (Yarn v1)/bun.lockからdeno.lockへの移行がサポート deno.lockが存在しない状態でのdeno installコマンドの実行時に、package-lock.json/pnpm-lock.yaml/yarn.lock (Yarn v1)/bun.lockのいずれかが検出されたら、それらの内容からdeno.lockを自動生成してくれる機能が実装されています: feat(install): seed deno.lock from package-lock.json #35330 feat(install): seed deno.lock from pnpm-lock.yaml #35346 feat(install): seed deno.lock from yarn.lock #35350 feat(install): seed deno.lock from bun....

June 21, 2026

2026/06/08〜2026/06/14の最新情報

Deno v2.8.3 Deno v2.8.3がリリースされています。 deno compile deno compileに--exclude-unused-npmオプションが追加されています (#34741)。実行可能ファイルの作成時にアプリケーションにおいてimportされていないnpmパッケージを実行可能ファイルから除外してくれるようです。Deno v2.8.2で実装されたdeno compile --bundleと同様に、実行可能ファイルのサイズの削減が期待されそうです。 また、deno compileで--watchがサポートされています (#34860) deno x deno xコマンドに--ignore-scriptsオプションが追加されています (#34952)。このオプションに引数を指定しない場合、すべてのnpmパッケージのライフサイクルスクリプトが無効化されます。引数が指定された場合、指定されたnpmパッケージに対してのみライフサイクルスクリプトの実行が無効化されます。 deno lsp 以下の改善が実施されています: Deno.test()に対するDebug code lens がサポートされています (#34742) textDocument/codeAction: Deno.test()に対するignore/onlyオプションのトグルがサポートされています (#34861) deno.jsonのimportMapで指定されたImport mapファイルに対する診断がサポートされています (#34864) LSPがdeno doc --lint及びdeno publish --dry-run相当の診断を実施してくれるように改善されています。JSRパッケージ中の各エントリーポイントにおける公開APIのJSDocコメントや型定義について検査してくれます (#34733, #34740) deno test --doc deno test --docがコードブロック中のshebangを解釈してくれるように改善されています。shebangで指定されたパーミッションフラグに基づいてDeno.test()のpermissionsオプションが自動で設定されます (#35052) deno fmt json.trailingCommasオプションが追加されています (#33383) { "fmt": { "json.trailingCommas": "jsonc" } } deno add deno addやdeno updateなどの各種依存関係管理用のコマンドで--env-fileオプションがサポートされています (#34843)。.envでDENO_AUTH_TOKENSが定義されているようなケースなどが想定されています。...

June 14, 2026

2026/06/01〜2026/06/07の最新情報

Deno v2.8.2 Deno v2.8.2がリリースされています。 deno compile --bundle deno compileに--bundleオプションが追加されています (#34527, #34529, #34531, #34532, #34534) deno bundleと同様の仕組みでエントリーポイントをバンドルしてから実行可能ファイルを作成してくれます。実行可能ファイルのサイズ削減などが目的で導入されたようです。 また、--minifyオプションによるバンドルの最小化も可能です (#34536)。 JSR deno publish JSRパッケージ中の各.wasmファイルにおけるインポートセクションに対して、通常のJavaScript/TypeScriptモジュールと同様にImport mapsに基づいてbare specifierを解決してからJSRへ公開されるように挙動が変更されています (#34549) deno add JSRパッケージのインストール時に@latestタグの指定がサポートされています (#32859) $ deno add jsr:@std/fmt@latest deno task 複数タスクの一括実行に関する改善 実行するタスクのパターンを指定する際に(!a|b|c)形式での指定がサポートされています (#34506)。具体的にはtest:*(!e2e|integration)形式でパターンを指定すると、test:unitタスクは実行されるもののtest:e2e及びtest:integrationタスクは実行がスキップされます。 また、--recursiveや--filterによってワークスペース中の複数のパッケージに対するタスクを一括実行する際に、各パッケージ間でタスクが並列実行されるように挙動が変更されています (#34512) --env-file --env-fileオプションがサポートされています (#34508)。.envで定義された環境変数が適用された状態でタスクが実行されます。 deno run deno runに<folder>/<subpath>形式でエントリーポイントが指定され かつ 対応するnpmパッケージ向けのマッピングがImport mapsによって定義されている ("<folder>": "npm:folder") 場合、 該当npmパッケージが<subpath>エントリーポイントを提供していなければ、./<folder>/<subpath>形式でローカルファイルへフォールバックするよう挙動が変更されています (#32854) また、deno check以外のdeno runなどのコマンドでcompilerOptions.verbatimModuleSyntaxの設定が認識されるように改善されています (#34495) deno lsp 入力補完の改善 deno.jsonのimports及び scopesにおけるjsr:/npm:/node: specifier に対する入力補完がサポートされています (#34724)。npmやjsrレジストリへ問い合わせを行った上でパッケージを提案してくれるようです。 それに加えて、npmパッケージのサブパスに対する入力補完 (npm:<package>/<subpath>) がサポートされています (#34675)...

June 7, 2026

2026/05/25〜2026/05/31の最新情報

Deno v2.8.1 Deno v2.8.1がリリースされています。 deno bundle package.jsonのsideEffectsフィールドがサポートされています (#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サポートが利用できます。...

May 31, 2026

2026/05/18〜2026/05/24の最新情報

Deno v2.8 Deno v2.8.0がリリースされました。 以下のページに変更内容をまとめているため、よろしければ参照ください: Deno v2.8 Claw Patrol Deno公式からClaw PatrolというAIエージェント向けのファイアウォールがOSSとして公開されています: https://deno.com/blog/clawpatrol https://github.com/denoland/clawpatrol Denoと直接的に関係があるわけではなさそうですが、Denoの開発や運用において活用されているようです。

May 24, 2026