Node.js 26では、Temporal APIと主要なプラットフォーム改善が実装されています。

  • Node.js 26は現行バージョンとしてリリースされ、10月にLTS(長期サポート)バージョンに移行し、2029年までサポートされる予定です。
  • Temporal APIはデフォルトで有効になっており、JavaScriptにおける日付と時刻の扱いをDateと比較してより現代的なものにしています。
  • V8エンジンはバージョン14.6にアップデートされ、undici HTTPクライアントは8.xブランチ(8.0.2)に更新されました。
  • このバージョンでは、互換性に関する変更が導入されています。具体的には、新しいコンパイル要件、非推奨機能の追加、および古いAPIの削除などです。

node.js 26.0.0

JavaScriptプラットフォーム Node.js リリースしました バージョン26はメジャーリリースであり、ブラウザ外でJavaScriptコードを実行するために設計された環境の進化における新たな一歩となります。これが新しいブランチです。 電流プローブこれは、標準APIの近代化と、エコシステムを今後数年間のサポートに向けて準備することに明確に焦点を当てたものです。

この新しいリリース node.js 26.0.0 公式ウェブサイトからダウンロード可能で、新機能をいち早くテストしたい開発者やチーム向けに設計されています。現在は開発中のバージョンですが、プロジェクトでは既に長期サポート版への移行スケジュールが策定されており、安定した予測可能なサイクルを必要とする企業にとって特に重要な情報となります。

Node.js リリースカレンダーとサポートサイクル 26

ブランチ26は、以下のバージョンに組み込まれています。 長期サポートしかし、それは2つのフェーズで行われます。約6か月間は、 電流プローブ新機能の追加や調整が行われた後、コードの安定化期間を経て、10月にLTS(長期サポート)版に移行します。移行完了後は、26.xシリーズはセキュリティパッチやバグ修正を含め、2029年5月までサポートされます。

並行して、プラットフォームチームはサポート終了日が異なる他のブランチも管理しており、これは大規模プロジェクトにおける移行計画に役立ちます。 Node.js 24.x拡張サポート付きの は、2028 年 4 月までアップデートが継続されますが、22.x ブランチは 2027 年 4 月にサポートが終了する予定です。一方、LTS 20.x ラインはすでにメンテナンスが終了しており、中間バージョン 25.x は 6 月初旬にサポートが終了するため、チームはより新しいシリーズへの移行を迫られています。

テンポラルAPI:日付と時刻を扱う新しい方法

毎日プログラミングをする人にとって最も目に見える変化は、デフォルトで有効化される 一時API従来のオブジェクトに代わる現代的な選択肢を提供する一連の型とメソッド DateこのAPIは、日付と時刻の管理を簡素化することを目的としています。日付と時刻の管理は、これまでタイムゾーン、夏時間の変更、フォーマット間の変換などが原因でエラーが発生しやすい分野でした。

Temporal を使用すると、プロジェクトの特定のニーズに応じて、時間をさまざまな方法で表現できます。たとえば、アプリケーションは、次のような型を使用して、特定のタイムゾーンに関連付けずに日付と時刻を処理できます。 一時的なプレーン日付, 一時的。プレーンタイム y 一時的なプレーン日付時刻固定スケジュール、予約、登録など、現地価格のみが重要な場合に便利です。

コンテキストでタイムゾーンを考慮する必要がある場合、API は テンポラル.ゾーン付き日時これにより、日付と時刻が特定のタイムゾーンにリンクされ、地域間を移動する場合やタイムゾーン規則を適用する場合に正確な計算が保証されます。さらに、絶対時刻を保存および比較するために、次の機能が導入されます。 一時的。即時これは、1970年1月1日からのナノ秒数で特定の時点を表すものであり、分散システムや監査において実用的です。

データ型以外にも、API は変換、書式設定、および時間演算を直接組み込んでおり、外部ライブラリに頼ることなく、期間の追加や減算、タイムゾーンの変更、読みやすい出力の生成が可能です。 一時的設定はデフォルトで有効になっています Node.js 26は、金融アプリケーションから物流サービスまで、信頼性の高いカレンダー管理を必要とするプロジェクトにおける、Node.jsの段階的な導入を促進します。

V8エンジンのアップデートと新しいJavaScript機能

今回のリリースにおけるもう一つの重要な要素は、実行エンジンの飛躍的な進化です。 V8 バージョン14.6へ。これはChromium 146で使用されているものと同じ行です。このアップデートにより、パフォーマンスの向上だけでなく、言語機能の追加や、アプリケーションの応答時間に影響を与える内部最適化も実現します。

開発者に直接利益をもたらす新機能の中で、 複数のイテレータを組み合わせる この方法を用いて 1 つに Iterator.concat()この機能により、中間構造を作成する必要なく、異なるソースからのデータシーケンスの操作が簡素化されます。これは、大量の情報を処理するサーバー上で処理フローを実行する際に役立ちます。

エンジンには以下の仕様も組み込まれています。 アップサート コレクションのために Map y WeakMap JavaScriptでは、この機能のおかげで、キーと値のペアを扱うのがより簡単になります。エントリの挿入や更新を単一の操作で行えるため、必要なコード量を減らし、並行環境における潜在的な競合状態を最小限に抑えることができます。

Undici 8とHTTPクライアントの改良

ネットワーク通信に関して、Node.js 26では公式HTTPクライアントが更新されています。 ウンディチ 8.x シリーズへ。具体的には、プロジェクト内の様々な情報源によると、バージョン 8.0.2 が採用されたとのことです。これは、安定性、パフォーマンス、および Web API の現在のニーズとの互換性において、大きな進歩を意味します。

今回のクライアントアップデートは、マイクロサービス、サードパーティプラットフォーム、および内部システムとのやり取りが頻繁に発生するインフラストラクチャ上に展開されたサービスにとって特に重要です。新しいundiciブランチには、永続接続管理の改善、HTTP/1.1およびHTTP/2のサポートの更新、リソース消費の最適化が組み込まれており、これらによってレイテンシが削減され、利用可能なハードウェアをより有効に活用できます。

互換性およびビルド要件の変更

Node.js 26への移行に伴い、ビルド環境と関連ツールにも調整が加えられています。このバージョンをソースからビルドするには、 最小要件:GCC 13.2この変更により、プロジェクトはより新しいコンパイラに対応し、最新のバイナリレベル最適化が利用可能になります。この変更に伴い、古いバージョンのツールを使用している継続的インテグレーション環境やビルドサーバーでは、アップデートが必要になる場合があります。

並行して、新しいブランチはサポートを停止します Pythonの3.9 これは、そのツールチェーンにおける変更を意味し、そのバージョンに依存していた構成は、より新しいバージョンの言語に移行する必要があります。この決定は、旧バージョンの依存関係を排除し、セキュリティアップデートが継続的に提供されるソフトウェアに基づいてプロジェクトの基盤を維持するための、より広範な取り組みの一環です。

Node.jsにおける非推奨機能と廃止されたAPI 26

新機能に加えて、開発チームは一連の互換性変更を導入しました。これらは、本番プロジェクトを移行する前に確認する必要があります。強調されている点の1つは、 方法の撤回 http.Server.prototype.writeHeader()従来は、サーバーから HTTP ヘッダーを送信するために使用されていました。このバージョン以降、公式には を使用することが推奨されています。 http.Server.prototype.writeHead()これは引き続きサポートされているルートです。

さらに、このバージョンは、 DEP0182モジュールに関連する crypto古いまたは問題のある API をクリーンアップするルーチンプロセスの一環として。 module.register()この変更は、より高度な、あるいはカスタマイズされたモジュールローディングシステムを使用しているユーザーに影響を与え、この機能の潜在的な用途を見直す必要が生じるでしょう。

新しいブランチではブートオプションも削除されています --experimental-transform-typesこの機能は、実験的な機能セットの一部でしたが、削除されました。この削除は、開発チームが型変換のサポートを他の手段、あるいは言語およびプラットフォームのライフサイクルの後の段階で統合し、実験的なフラグの数を減らすことを優先していることを示しています。

全体として、Node.js 26のリリースはエコシステムにとって重要なアップデートと言えます。最新のAPIによって時間ベースの基盤が強化され、V8エンジンがアップデートされ、HTTPクライアントが改善され、レガシーインターフェースの整理も進んでいます。2029年までのサポート期間と明確なロードマップを備えたこの新バージョンは、プラットフォームの最新機能を犠牲にすることなく長期的な安定性を求めるユーザーにとって、確かな選択肢となるでしょう。