日期:2023 年 4 月 12 日
版本:F10
我們已實施下列變更:
元件架構
除了 Opal、Kronk、cast_runner
和 web_instance
之外,大多數元件現在都會以 v2 版本執行。
開發人員
Bazel
我們在 Bazel 工作流程中做出了以下改善:
- 在 Fuchsia 平台外定義的 FIDL 程式庫,開頭不得為 Fuchsia。
fuchsia_package.deps
應更新為fuchsia_package.components
和fuchsia_package.tools
。- 執行及發布元件時,系統會列印執行的每個步驟;使用者不需要為此更新進行任何變更。
問題:需要新增初始發布規則。
影響:新增了 fuchsia_task_publish
規則,系統會自動為套件建立這項規則。呼叫 bazel run :pkg.publish
現在會發布套件。
問題:需要在 CIPD 下載作業中加入平行擷取功能。
影響:平行擷取功能已新增至 CIPD 下載作業,可加快 Clang 和 SDK 的下載速度。
問題:需要在 fuchsia_package
中淘汰依附元件。影響:fuchsia_package
中的已淘汰的依附元件。不需要變更,但在 fuchsia_package
更新為使用元件和資產之前,系統會顯示警告訊息。
ffx
ffx
和其他工具已進行下列更新:
- 如果產品套裝組合已存在於您的電腦上,產品套裝組合下載作業就不會重新下載產品套裝組合。
- 新增清理先前下載的產品套裝組合功能。
- 改善下載產品組合時的使用者介面。
ffx
元件複製外掛程式可在主機和目標上的元件之間複製檔案。- 可靠地恢復未完成的下載作業。
- 設定檔工具:
- 新增選項,可透過區塊回報記憶體用量。
- 修正會對間接 VMOs 收取錯誤費用的會計錯誤。
- 外觀改善,包括新增選項,可選擇人類可讀大小和確切大小、對齊輸出內容,以及提供更清楚的說明。
- 偵錯工具:
- 強化相容性支援功能,讓使用者看到的版本不相符情形減少。
- 解決 Fuchsia VSCode 擴充功能的「偵錯工具未連線至裝置」問題。
- 根據預設,所有元件測試都會受限於密封解析器;如果套件未宣告,則測試套件中啟動元件的測試會失敗。請參閱「密封元件解析」。
- 更新
ffx log --severity
,以便同時將警告和警告做為引數。
- 更新
- 已從實驗功能升級:
ffx package build
– 建構套件。ffx repository publish
:將一或多個套件發布至存放區。ffx repository package list
:列出存放區中的所有套件。ffx repository package show
:列出套件的內容。
- 已導入實驗功能:
ffx package far
:用於使用一般far
指令。ffx package archive
:用於處理套件封存檔。ffx driver list-devices
:支援模糊比對。
- 新增了
ffx driver list-nodes-groups
。 - 已新增《
ffx inspect list-files
》。- 從
ffx inspect list-files
中移除使用中樞,並刪除ffx inspect show-files
。 - 以檔案名稱為基礎查詢檢查作業的 API 現已移至
ffx inspect show --file
,並採用相對於元件命名空間的檔案名稱。
- 從
- 更多
ffx component
外掛程式 (destroy, doctor, explore, start, stop, resolve, reload
) 支援路徑名稱、網址和例項 ID 的部分比對。 - 為
ffx trace
指定--categories
時,您可以使用萬用字元*
來表示啟用與特定前置字串相符的所有類別,例如kernel*
會比對kernel:ipc
、kernel:syscall
等。 - 新增在 C++ 中列印
set, map, unordered_set
和unordered_map
的功能。 - 新增設定
source-map
,讓您更靈活地尋找來源檔案。 - 改善連線錯誤的顯示方式。
- 推出同步 UI;短時間執行的指令會阻斷輸入。
- 已將
--force-repo
選項新增至ffx product-bundle get,
,這樣系統就會覆寫套件存放區,而不會因為先前有套件存放區而拒絕覆寫。 - 在記錄中增加追蹤偵錯輸出內容。
- 不允許部分下載:使用暫時性目錄,直到下載完成為止,避免部分下載問題。
問題:我們即將移除對 OAuth2 OOB 的支援。
影響:更新為預設的 OAuth2 非 OO B 工作流程。
問題:在列出或移除套裝組合時,product-bundle
工具不會傳回任何內容,也不會有效通知使用者。
影響:我們已完成更新,當工具找不到套件時,會更明確地顯示。
問題:使用者不清楚 remove --all
指令會刪除哪些套件。
影響:已更新清單,列出先前要移除的套件。
問題:ffx product-bundle list
的排序順序導致最舊的圖片顯示在清單頂端。
影響:更新清單的反向排序順序,以便將最新的組合包列為首要項目。
問題:嘗試get
重複的產品套件訊息 (PBM) 時,工具會顯示重複的 repo 訊息,而非重複的套件訊息。
影響:已修正重複的 PBM 訊息排序問題。
問題:預設移除指令會移除樹狀結構中的版本。
影響:已修正移除樹狀結構中的版本。
問題:使用者無法在記錄器中設定嚴重性限制。
影響:現在,驅動程式可透過 ffx log --severity
動態設定嚴重性。
診斷
- Archivist 不再提供生命週期事件做為資料來源,只提供檢查和記錄。我們也重構了 Archivist,讓這個工具能使用新的事件串流功能擷取資料。
- 我們已實作 RFC-171,現在可確保所有元件都能取得 LogSink,進而改善開發人員體驗。
- 改善分類剖析器,並改善
_-separated numbers, Any, All
等部分語言。 - 重新整理 Sampler,避免產生空白直方圖儲存區,進而減少 Cobalt 的負載。
ffx inspect
新增了許多功能,例如:ffx inspect list-files
、iquery show –file
和 globs,並已改善為不依賴 hub。- 我們修正了 Rust 記錄程式庫的幾個錯誤,並縮小了記錄程式庫的大小,以節省 BlobFS 的空間。
FIDL
我們已開始在二進位檔中推出對未知互動的支援功能。請參閱 RFC-0138。
圖形和媒體
- 改善 Tigerlake 裝置上 i915 的穩定性。驅動程式已預設為啟用。
問題:啟用「顯示設定」測試案例後,裝置會停留在黑色畫面。
影響:修正 AMLogic 顯示畫面,以修正部分固定面板。
問題:使用 Driver Framework v2 時,驅動程式會發生死結。
影響:i915 顯示器驅動程式庫已移至 Driver Framework v2。
HCI (輸入、無障礙、i18n 和 View 系統)
問題:在場景控制器中發生測試失敗。
影響:更新內容可讓用戶端使用原始 ViewportCreationToken
呈現平面地圖檢視畫面。
問題:在 Flatland 中,醒目顯示的顏色不同。
影響:修正 Flatland 中的 a11y 醒目顯示顏色。
問題:需要具備螢幕截圖功能。
影響:更新內容,新增圖片壓縮骨架。
問題:當剪貼簿內容變更時,應通知使用者。
影響:更新內容為新增剪貼簿監控方法。
問題:需要新增圖片翻轉選項 API。
影響:更新內容為新增圖片翻轉選項 API。
問題:pixel_scale
欄位已淘汰,應予以移除。
影響:更新後,pixel_scale
的狀態已從「已淘汰」變更為「已移除」。
核心
問題:需要更新,才能為 PID 0 發出名為「kernel」的程序記錄,以便恢復與原始 ktrace
匯入器的對應關係。
影響:為核心建立含有核心執行緒和個別 CPU 事件追蹤記錄的程序記錄。
問題:需要能夠在本機和自動化中,根據預設透過 UEFI 啟動模擬器。
影響:更新後,可在自動化環境中於模擬器上進行 UEFI 測試。
問題:需要使用 zx
遷移 zxc
程式庫。
影響:已更新,將 zxc
參照遷移至 zx
。
問題:需要減少執行緒中的邊框間距。
影響:更新內容可減少執行緒中的邊框。
問題:ktrace
序列化器範本需要更新,才能支援 val_type
參數,並讓 StringRef
接受字串大小參數。
影響:已更新 ktrace
中的序列化器範本和依附元件。
問題:需要變更 C++ 中的 Undef __UNUSED
參照。
影響:我們已更新 C++ 中的參照,將 Undef __UNUSED
變更為 maybe_unused
。
問題:建議採用樂觀時間片段延長功能。
影響:使用時間片段擴充功能時,可改善核心互斥鎖效能。
虛擬化
- 改善啟動 VM 失敗時顯示的錯誤訊息。
- 將
vsh
工具從 C++ 移植至 Rust。 - 在
virtio-gpu
中實作游標指令支援功能。 - 新增初始
vmm_launcher
元件。