V8 JavaScriptエンジンとRust言語を使用したJavaScript/TypeScriptランタイムであるDenoの開発チームは、最新バージョンとなる「Deno 1.29」を12月14日(現地時間)に公開した。DenoはMITライセンスで公開しているオープンソース・ソフトウェア。
「Deno 1.29」では、独自のnpmレジストリを使えるようになった。使用するには環境変数「NPM_CONFIG_REGISTRY」に独自に使用するnpmレジストリのURLを指定すれば良い。また、「deno install」コマンドでnpm specifier(指定子)が使えるようになった。
そして、「deno repl」コマンドでnpmパッケージを動作させることができるようになった。さらに、前バージョンまではdeno replコマンドを実行するとすべての権限をもってコードを動作させていたが、これを変更して権限を一切持たずにコードを実行するようにした。deno replでコードを試しに動かすときは、権限を求めるメッセージがいちいち出てくるのは不便だと考えて、すべての権限を持たせてコードを実行させていたが、「secure by default」というDenoのスローガンと矛盾すると考えて、今回の変更に至った。変更以降でも「--allow-*」フラグを使えば、権限を付与した状態でコードを実行させることができる。
バージョン1.25で加わった「deno init」コマンドにも改善が加わった。新しいプロジェクトを作成するときにこのコマンドを実行することで、足場となるファイルを生成してくれるのだが、これまでは「main.ts」と「main_test.ts」の2つのファイルしか生成してくれなかった。今回の新バージョンからはさらに「deno.jsonc」と「main_bench.ts」の2つのファイルを生成するようになった。
Visual Studio Code向け拡張にも変更がある。変数の型や関数の戻り値の型を文中に埋め込む形で表示するインレイヒントの機能を標準で有効にした。インレイヒントの機能はバージョン1.27で追加していたが、標準では動作しないように設定していた。開発チームは追加した機能がすべて正しく機能すると確信を持てなかったため、標準設定では無効にすると決めたが、バージョンを重ねて、この機能が期待通りに動作すると自信を持てるようになったため、標準で有効にすると決めたという。
ほかにも、今回の新バージョンからTypeScript 4.9に対応するなど、さまざまな機能が加わっている。
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です