編集

Node.js v22からv24への移行ガイド公開

Node.js v22からv24への移行ガイドが公開された。Node.js 24.11.0のリリースにより、Node.js 24リリースラインがLong-Term Support(LTS)に入り、2028年4月末まで更新が継続される。

プラットフォームサポートの変更として、32-bit Windows(x86)はNode.js 23.0.0から、32-bit Linux on armv7はNode.js 24.0.0からプリビルドバイナリが提供されなくなった。macOSのプリビルドバイナリにはmacOS 13.5以上が必要。

破壊的変更として、OpenSSL 3.5が含まれ、デフォルトのセキュリティレベルが2に設定された。これにより、2048ビット未満のRSA、DSA、DHキーや224ビット未満のECCキー、RC4を使用する暗号スイートが禁止される。

その他の動作変更として、fetch()のより厳密な準拠、AbortSignalの検証、stream/pipeエラーのスロー、Bufferの動作変更、Windowsでのパス処理の修正、test runnerのデフォルト変更などが含まれる。

C/C++アドオンはV8 13.6に対応するために更新が必要な場合があり、C++20サポートが必要になる場合がある。可能な限りNODE-APIの使用を推奨。

ソースからビルドする場合、AIXとLinuxプラットフォームではgcc 12.2以上、macOSではXcode 16.1以上が必要。

移行を支援するcodemodが提供されている:

  • fs-access-mode-constants: fs.F_OKなどのgetterをfs.constantsから取得するように変更
  • util-log-to-console-log: util.logconsole.logに置き換え
  • zlib-bytesRead-to-bytesWritten: zlib.bytesReadzlib.bytesWrittenに置き換え
  • fs-truncate-to-ftruncate: fs.truncatefs.ftruncateに置き換え
  • crypto-rsa-pss-update: RSA-PSSキーペア生成のオプション名を更新

出展:Node.js v22 to v24

編集