Zum Hauptinhalt springen

Dieses Dokument bietet Checklisten mit technischen Anforderungen für das Staging und den Versand von WebAssembly-Funktionen in V8. Diese Checklisten dienen als Leitfaden und sind möglicherweise nicht auf alle Funktionen anwendbar. Der eigentliche Launch-Prozess wird im V8 Launch-Prozess beschrieben.

Staging

Wann eine WebAssembly-Funktion gestaged werden sollte

Das Staging einer WebAssembly-Funktion markiert das Ende ihrer Implementierungsphase. Die Implementierungsphase ist abgeschlossen, wenn die folgende Checkliste erfüllt ist:

  • Die Implementierung in V8 ist abgeschlossen. Dies umfasst:
    • Implementierung in TurboFan (falls zutreffend)
    • Implementierung in Liftoff (falls zutreffend)
    • Implementierung im Interpreter (falls zutreffend)
  • Tests in V8 sind verfügbar
  • Spezifikationstests werden in V8 durch Ausführung von tools/wasm/update-wasm-spec-tests.sh eingepflegt
  • Alle bestehenden Spezifikationstests für Vorschläge bestehen. Fehlende Spezifikationstests sind bedauerlich, sollten das Staging jedoch nicht blockieren.

Beachten Sie, dass die Stufe des Funktionsvorschlags im Standardisierungsprozess für das Staging der Funktion in V8 nicht relevant ist. Der Vorschlag sollte jedoch größtenteils stabil sein.

Wie man eine WebAssembly-Funktion staged

Siehe das Staging der Typreflektion als Referenz.

Versand

Wann ist eine WebAssembly-Funktion bereit zum Versand

Wie man eine WebAssembly-Funktion verschickt

  • Bewegen Sie in src/wasm/wasm-feature-flags.h das Funktionsflag von der Makroliste FOREACH_WASM_STAGING_FEATURE_FLAG zur Makroliste FOREACH_WASM_SHIPPED_FEATURE_FLAG.
    • Stellen Sie sicher, dass Sie ein Blink-CQ-Bot im CL hinzufügen, um Blink Web-Tests auf Fehler zu überprüfen, die durch die Aktivierung der Funktion verursacht wurden (fügen Sie diese Zeile zum Fußtext der CL-Beschreibung hinzu: Cq-Include-Trybots: luci.v8.try:v8_linux_blink_rel).
  • Aktivieren Sie außerdem die Funktion standardmäßig, indem Sie den dritten Parameter in FOREACH_WASM_SHIPPED_FEATURE_FLAG auf true ändern.
  • Setzen Sie eine Erinnerung, um das Funktionsflag nach zwei Meilensteinen zu entfernen.