Deno v1.36
Deno v1.36がリリースされました。 この記事では主な変更点などについて解説します。 --deny-*オプション --deny-*という新しいオプションが導入されました。このオプションにより、Denoに対して特定の操作のみを明示的に拒否させることができます。 例えば、以下の場合、Denoにwrite権限のみを拒否させています。 $ deno run --allow-all --deny-write main.js このように--allow-*オプションと--deny-*オプションは併用することが可能で、その場合、--deny-*オプションの方が優先されます。 また、--deny-*には--allow-*と同様に、リスト形式で対象を指定することもできます。 $ deno run --allow-read --deny-read=README.md main.js 上記の場合、./README.mdへの読み込みのみが拒否され、それ以外のファイルの読み込みは許可されます。 { const content = await Deno.readTextFile("Makefile"); // => OK console.info(content); } { const content = await Deno.readTextFile("README.md"); // => PermissionDenied console.info(content); } deno_modulesディレクトリの導入 ⚠️この機能はまだunstableという扱いのため、今後、機能などに変更が入る可能性があります。 また、現在、deno_modulesをvendorにリネームするPRも作成されており、今後ディレクトリやオプションなどの名前が変わる可能性も高そうです。 feat(unstable): rename deno_modules to vendor #20065 deno.jsonにdenoModulesDirという新しいオプションが導入されました。 このオプションにtrueを設定すると、リモートモジュールがdeno_modulesというディレクトリにダウンロードされるように挙動が変更されます。 { "denoModulesDir": true } この状態でスクリプトを実行すると、依存しているリモートモジュールがdeno_modulesに保存されます。 import { blue } from "https://deno....