OpenTelemetryサポートの安定化について

DenoのOpenTelemetryサポートを安定化するPRが作成されています:

今後は--unstable-otelの指定は不要化され、OTEL_DENOなどの指定のみで利用できそうです。

このPRは2.4.0のマイルストーンに含まれており、Deno v2.4でのリリースが検討されているようです。

deno publishでのnpmパッケージの公開について

deno publishでnpmパッケージの公開をサポートするため、--npmオプションを追加するPRが作成されています:

現状ではまだ実装途中の段階のようですが、今のところdeno runコマンド経由でnpm (npm:npm@11.4.2) を実行することでnpmパッケージを公開できるようにすることが想定されているようです (cli/tools/publish/npm.rs#L15)

このPRについては2.4.0のマイルストーンに含まれていないため、リリースは少し先になるかもしれません。

Freshにおけるesbuild_deno_loaderから@deno/esbuild-pluginへの移行について

Freshでは長らくesbuild_deno_loaderというesbuildプラグインが使用されていました。Freshにおいてこのesbuild_deno_loaderから先週に紹介した@deno/esbuild-pluginへ移行が行われています:

まだリリースは行われていないものの、この変更によって、Deno本体とFreshにおけるモジュール解決の振る舞いの互換性がより改善されそうです。

Hono v4.8.0

Hono v4.8.0がリリースされています。

hono/routeが追加

hono/route (Route Helper)という新しいモジュールが追加されており、Contextオブジェクトを引数に渡すことでクライアントから要求されたパスなどの情報を取得することが可能です。

hono/ssg - プラグインシステムが実装

hono/ssgにおいてプラグインシステムが実装されています。

toSSG()に追加されたpluginsオプションでプラグインを指定可能で、フックを実装することによってページの生成に関する振る舞いのカスタマイズなどができるようです。

各種ミドルウェアの改善

各種ミドルウェアで様々な改善が実施されています:

ミドルウェア変更内容
hono/jwtAuthorization以外のヘッダーがサポート (headerNameオプション)
hono/corsallowMethodsオプションで関数の指定がサポート
hono/jsx/streaming<StreamingContext>が追加 (<script>へのnonce属性の設定がサポート)
hono/jwkallow_anonオプションが追加 (trueを指定すると、有効なトークンが見つからない場合でも次のミドルウェアーが実行されます)
hono/cachecacheableStatusCodesオプションが追加, キャッシュ対象のステータスコードを指定できます (デフォルトは200のみ)

Hono#fireの非推奨化

代わりにhono/service-workerfire()への移行が推奨されています。

その他

Honoのコードサイズの削減や@hono/zod-validatorにおけるZod v4のサポートが実施されているようです。

また、今回のリリースに合わせて以下のパッケージが公開されているようです: