FIDL 專案檢查清單

變更 FIDL 通常會產生大量的下游效果。本文件提供變更 FIDL 時需考慮之項目的檢查清單。請注意,檢查清單中的元素不一定每次都會套用於每項變更,但至少應讓開發人員再次檢查變更是否已完成。

fidlc 編譯器的變更

這份檢查清單適用於會影響 FIDL 本身的變更,例如語法或語意變更。

  • 更新規格。
  • 更新相關工具。
    • FIDL 格式器/Linter 及其相關聯的 Tree 訪客。
    • fidldoc 工具:針對產生的說明文件應該反映的語言變更,例如新的資料類型或修飾符。
    • 編輯器和語法醒目顯示。
  • 更新 FIDL 檔案。如要更改語法,請更新現有的 FIDL 來源,包括:
    • 樹狀結構中的實際 FIDL 來源檔案 (如有需要,可以不在樹狀結構中)。
    • 在測試原始碼中以字串形式指定 FIDL 來源,例如編譯器單元測試fidlgen 端對端測試
    • 說明文件中的 FIDL 程式碼片段。
  • 確保系統能處理與屬性的互動。
    • 舉例來說,這項功能是否需要添加新的刊登位置?
  • 更新整合測試
    • 如果是更大型的語言功能,建議您在現有的整合測試中新增測試涵蓋範圍。例如,透過相容性測試確保跨繫結一致性,或透過來源相容性測試確保轉換性。
  • 特別是剖析器變更:
    • 更新 span_tests,確保剖析的 Span 正確無誤,而不只是剖析成功
  • 原始 AST 變更:
    • 確保 AST 的更新會一併套用至原始 AST 樹狀結構訪客及其下游使用者。例如,在節點中新增欄位也許會隨附造訪該新欄位的訪客變更。
  • 語意變更:
    • 請更新功能專屬的單元測試,例如在修改資料表時更新 table_tests,或是建立新的測試檔案。

針對 FIDL 的變更,其會串聯後端以更新所有 Fuchsia FIDL 團隊擁有的繫結,即 Rust、Go、Dart、HLCPP、New C++ (自然和線)。

JSON IR 的變更

fidlgen_<lang> 個後端的變更

FIDL 線格式變更

水平測試規定

新增涵蓋率至: