Deno v2.4.3

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

deno bundle - --node-modules-dir=manualのサポート

package.jsonが存在する場合など、--node-modules-dir=manualが有効化されている際にdeno bundleでエラーが発生する問題が修正されています (#30200)

deno task - --recursiveの挙動の改善

deno task--recursive (--filter)オプションが指定された際に、パッケージ間の依存関係に基づいて各タスクの実行順序を調整する改善が実施されています (#30129)

また、--recursiveオプションが指定された際に、タスクが実行されたパッケージ名が表示されるように改善されています (#30136)

deno check - 存在しないモジュールが検出されないバグの修正

存在しないモジュールへのimportが検出された際にエラーが検出されなくなっていた問題が修正されています (#30181)

deno run - --configオプションに関するバグ修正

--configが指定され かつ エントリーポイントが../形式で指定された場合にエラーが発生する問題が修正されています (#30208)

deno compile - クロスコンパイル時のnpmパッケージの取り扱いの改善

クロスコンパイルする際に、現在のプラットフォーム向け以外のパッケージが検出された際にエラーが発生する問題が修正されています (#30188)

また、node_modulesがある際に、最終的にモジュールグラフ内に含まれないパッケージはコンパイル対象から除外されるように挙動が変更されています (#30189)

deno lsp - raw imports に関するサポートの改善

deno lspraw importsのサポートが改善されています。ファイルのリネームに関する挙動の改善や Go to Definition のサポートなどが実施されているようです (#30142)

deno publish - relative-package-importエラーの導入

deno publishコマンドでrelative-package-importエラーが導入されています (#30203)。別のパッケージのファイルを相対パス形式でimportしているパッケージが検出された場合にこのエラーが発生するようです。

node:buffer

Buffer#subarrayなどのパフォーマンスが改善されています。これにより、Postgres.js使用時のパフォーマンスが2倍近くまで高速化されているようです (#30213)

node:process

process._rawDebugが実装されています (#30141)

これはNode.jsの内部APIではありますが、aws-iot-device-sdk-v2が依存しているようです。

node:tls

TLSSocket#getPeerCertificatecheckServerIdentity()が実装されています (#30146, #30148)

node:zlib

ZlibBaseが実装され、BrotliCompressBrotliDecompressZlibBaseを継承するよう変更されています (#30112)

package.json - importsのサポートの改善

package.jsonを持つワークスペースにおいてimportsに基づいた解決がサポートされています (#30198)

Web API

ConsoleAPIにおけるProxyの取り扱いの改善

Proxyに対してconsole.log()などを呼んだ際に、handler.getが呼ばれないよう修正されています (#30230)

setTimeout()/setInterval()の型定義の改善

setTimeout()/setInterval()で文字列形式のコールバックを受け取れるよう型定義が改善されています (#30183)

FreshのViteプラグインについて

FreshのViteプラグインの開発が進められているようです。

まだマージはされていませんが、vite-pluginというブランチで開発が進められているようです。

plugin-vite/demoディレクトリにサンプルコードが配置されており、Cloudflare Workersなどでの動作も試みられているようです。