クロスプラットフォームに対応したオープンソースのJavaScript実行環境であるNode.jsの開発チームは、最新バージョンとなる「Node.js 20」を、4月19日(現地時間)にリリースした。
「Node.js 20」では、実行中に特定のリソースへのアクセスを制限するためのメカニズムであるPermission Modelが実験的に追加され、初の搭載となる今回は、ファイルシステムへのアクセス制限、子プロセスへのアクセス制限、ワーカースレッドへのアクセス制限、ネイティブアドオンへのアクセス制限が可能となっている。
ローダを通じて提供されるカスタムESモジュールライフサイクルフックは、メインスレッドから分離された専用スレッドにて実行されるようになり、ローダに別のスコープが提供され、ローダとアプリケーションコードとの相互汚染がなくなるなど、安定版に一歩近づいた。
Node.jsを実行するV8 JavaScriptエンジンは、「V8 11.3」にバージョンアップされ、パフォーマンスの改善とともに、メソッドへのString.prototype.isWellFormedおよびtoWellFormedの追加、コピーによってArray.prototypeおよびTypedArray.prototypeを変更するメソッドの追加など、いくつかの言語機能が追加されている。
test_runnerモジュールには、テストファイルを構造化するフックや、mocking、watchモード、複数のテストファイルを並行して実行する機能などが追加され、安定版となった。
ほかにも、パフォーマンスの改善、Web Crypto APIの相互運用性の向上、ARM64 Windowsの公式サポートが行われたほか、引き続きNode.js内へのWeb Assembly System Interface(WASI)の実装作業も進められているという。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です