メインコンテンツまでスキップ

このドキュメントは、V8でWebAssembly機能をステージングおよび出荷する際のエンジニアリング要件に関するチェックリストを提供します。これらのチェックリストは指針として設計されており、すべての機能に適用できるわけではありません。実際のローンチプロセスについては、V8ローンチプロセスをご参照ください。

ステージング

WebAssembly機能をステージングするタイミング

WebAssembly機能のステージングは、実装フェーズの終了を定義します。以下のチェックリストが完了すると、実装フェーズが終了となります:

  • V8での実装が完了している。これには以下が含まれます:
    • TurboFanでの実装(該当する場合)
    • Liftoffでの実装(該当する場合)
    • インタープリタでの実装(該当する場合)
  • V8でのテストが利用可能である
  • tools/wasm/update-wasm-spec-tests.shを実行して、仕様テストがV8に取り込まれている
  • すべての既存の提案仕様テストが成功している。欠落している仕様テストは残念ですが、ステージングをブロックするべきではありません。

標準化プロセスにおける機能提案のステージは、V8でのステージングには影響しません。ただし、提案はほぼ安定している必要があります。

WebAssembly機能をステージングする方法

型反射のステージングを参考にしてください。

出荷

WebAssembly機能が出荷準備が整う時期

WebAssembly機能を出荷する方法

  • src/wasm/wasm-feature-flags.hで、機能フラグをFOREACH_WASM_STAGING_FEATURE_FLAGマクロリストからFOREACH_WASM_SHIPPED_FEATURE_FLAGマクロリストに移動する。
    • 機能を有効にすることによって引き起こされるblink webテストの失敗をチェックするために、CLにblink CQボットを追加する (CL説明のフッターにこの行を追加: Cq-Include-Trybots: luci.v8.try:v8_linux_blink_rel)。
  • さらに、FOREACH_WASM_SHIPPED_FEATURE_FLAG内の3番目のパラメータをtrueに変更することによって、デフォルトで機能を有効にする。
  • 2つのマイルストーン後に機能フラグを削除するリマインダーを設定する。