次のLTS版となる「Node.js 22」正式リリース。WebAssembly GCがデフォルトで利用可能に
JavaScriptランタイム「Node.js」の最新バージョンとなる「Node.js 22」正式版がリリースされました。
Node.jsは偶数バージョンがリリースされてから6カ月の後に、30カ月の長期サポート期間(LTS:Long Term Support)に入ります。Node.js 22も、6カ月後の2024年10月にLTSとなる予定です。
Node.js 22 is here
— Node.js (@nodejs) April 24, 2024
Featuring: require()ing ESM graphs, WebSocket client, updates of the V8 JavaScript engine, and more.
Big thank you to @_rafaelgss and @satanacchio for their work on this pic.twitter.com/yXgR8fsMqt
Node.js 22でWebAssembly GCがデフォルトで利用可能に
Node.js 22では、JavaScriptエンジン「V8」がバージョンアップされ、「V8 12.4」が搭載されました。
V8 12.4ではWebAssembly Garbage Collection機能(WasmGC)がデフォルトで有効となったため、Node.js 22でWebAssemblyアプリケーションを実行する際にWebAssemblyのガベージコレクション機能が利用可能になりました。
WasmGCを利用することで、ガベージコレクション機能が言語のランタイムに含まれているJavaなどプログラミング言語をWebAssemblyで実装することが容易になります。すでにKotlinやDartなどWasmGC対応を進めている言語もあり、今後Node.js上でさまざまなプログラミング言語で開発したWebAssemblyアプリケーションが実行されていくことが期待されます。
さらにV8に新たなJavaScriptのJITコンパイラ「Maglev」が搭載されました。
すでにV8にはJavaScriptインタプリタの「Ignition」に加えて、短時間の実行で高速化の効果を発揮しやすいJITコンパイラの「Sparkplug」と、長時間実行されるコードでピーク性能を高めやすいJITコンパイラの「TurboFan」が搭載されています。
新たなJITコンパイラのMaglevは、このSparkplugとTurboFanの中間に位置する性格のJITコンパイラです。比較的短時間で実行が終了するコマンドラインから実行されるプログラムなどで性能向上の効果を発揮するだろうと説明されています。
その他、細かな新機能などは「Node.js 22 is now available!」をご覧ください。
あわせて読みたい
Node.js、ロケットに乗った亀「Rocket Turtle」が正式マスコットに
≪前の記事
GitHub、「Copilot Workspace」テクニカルプレビューを開始。ほとんど全ての開発工程をAIで自動化