「Deno v1.26 | 週刊Deno」
Deno v1.26がリリースされました。 この記事では主な変更点などについて解説します。 --allow-sysオプションの追加 Deno.osReleaseやDeno.systemMemoryInfoなどのシステム情報を取得するためのAPIの利用を制御するために、--allow-sysオプションが追加されました。 $ deno run --unstable --allow-sys=osRelease,systemMemoryInfo main.js 元々、これらのAPIを使うには--allow-envの指定が必要でした。 ただ、これらのAPIの利用に--allow-envを要求することの副作用として、全ての環境変数にアクセスできるようになってしまうという問題がありました。 この問題を解決するため、--allow-sysという新しいパーミッションが導入されました。 Cache APIのサポート DenoにCache APIが実装されました。 const cache = await caches.open("v1"); const req = new Request("https://example.com/"); console.assert(await cache.match(req) === undefined); const res = new Response("foobar"); await cache.put(req, res); const cachedRes = await cache.match(req); console.assert(await cachedRes?.text() === "foobar"); 挙動について localStorageなどと同様にSQLiteをベースに実装されており、利用する際は特にパーミッションなどは要求されません。 ただし、localStorageとは異なり、DENO_DIRではなく/tmp/deno_cacheにSQLiteのデータベースやキャッシュされたコンテンツなどが保存されます。 制限 現時点では、いくつかの制限があるようです。 ignoreSearchやignoreMethodなどのクエリオプションはまだサポートされてないようです。 Cache.deleteを呼んだ際に、SQLiteデータベースに保存されたメタデータは削除されるものの、キャッシュされたコンテンツは削除されないようです。 npmパッケージサポートの改善 今回のv1.26のリリースでは、--no-npmオプションが実装されています。 これにより、npm:によるnpmパッケージのimportを無効化できます。 $ deno run --no-npm main.ts また、Denoでnpmパッケージのimportがサポートされたことにより、Deno v1.25.2でNode.js互換モードが削除されています。 --compatは動かなくなっているためご注意ください $ deno run --compat --unstable main.
コンテンツ文字数:0 文字
見出し数(H2/H3タグ):0 個
閲覧数:103 件
2022-10-05 08:10:55