Deno v1.36.2

Deno v1.36.2がリリースされました。

Deno KV

キーに有効期限を設定できるようになりました。

Deno.Kv#setなどのexpireInオプションを指定することで、ミリ秒単位で対象のキーの生存期間を指定できます。

const db = await Deno.openKv();
await db.set(["key"], "value", { expireIn: 30 * 1000 }); // 最低でも30秒後に削除されます。

FFI

FFI関連のAPIをより型安全に扱えるように型定義が改善されています。

など

その他の変更点(バグ修正など)

  • Denoで以下のエラーが発生する問題が修正されています。(古いバージョンのdeno_cacheで作成したキャッシュを最新のDenoで読もうとした際に発生していたようです)
    error: missing field `now` at line x column y
    
  • Deno.listenTlsに不正な証明書または秘密鍵が指定されると、プロセスがパニックする問題が修正されました。
  • deno lsp: auto importの実行時にdeno.jsonfmtの設定が効くように挙動が改善されています。
  • deno test: JUnitレポーターでfilename/line/colが出力されるように改善されました。
  • deno.json: vendor: trueが指定された際に、vendorディレクトリからの直接のimportが無効化されました。(二重に依存関係がダウンロードされてしまったりする問題などを防止するため)
  • node:os: WindowsでuserInfo()が利用出来ない問題が修正されています。
  • navigator.userAgentWorker内で利用できない問題が修正されました。

Deno v1.36.3

Deno v1.36.3がリリースされました。

v1.36.2でdeno lintを実行した際に、async関数に対してno-await-in-sync-fnルールのエラーが起こることのある問題が修正されています。

また、URL.canParseの型定義も追加されています。

Deno本体での.envのサポートについて

Deno本体に--envというオプションを追加するPRが作成されています。

feat: –env-file #20300

このオプションに.envファイルへのパスを指定すると、Denoが自動でそれを読み込んで環境変数を設定してくれるようです。

この機能がリリースされるかどうかはまだわからないものの、Deno v1.37のマイルストーンに含まれているため、Deno v1.37のリリースとともに入る可能性があるかもしれません。

SimpleWebAuthnでDenoがサポート

SimpleWebAuthn v8.0.0がリリースされています。

このリリースではDenoの公式サポートが追加されています。