vcpkg PR 檢閱檢查清單
修訂:1
概觀
本檔提供批註檢查清單,vcpkg 小組成員會用來在傳入提取要求上套用「已檢閱」標籤。 如果提取要求違反上述任何點,我們可能會要求參與者進行必要的變更,才能合併變更集。
如果您覺得此檢查清單可以改善,請隨意建立問題或提取要求。 修改檢查清單內容時,請遞增修訂編號。
檢查清單
您可以複製附加至每個專案程式代碼的連結位址,以連結 GitHub 批注中的任何檢查清單專案。
c000001:未使用已被取代的協助程式函式
如需詳細資訊,請參閱我們的 維護者指導方針和原則 。
c000002: '“port-version”' 字段已更新
如需詳細資訊,請參閱我們的 維護者指導方針和原則 。
c000003:新埠包含以英文撰寫的 '“description”' 字段
只有一或幾個句子的描述會很有説明。 請考慮盡可能使用文件庫的官方描述或 README.md
類似的描述。 自動翻譯是可以接受的,我們很高興為參與者清除翻譯為英文。
如需詳細資訊,請參閱我們的 指令清單檔檔 。
c000004:變更集中沒有不必要的批注
如需詳細資訊,請參閱我們的 維護者指導方針和原則 。
c000005:如果可用
,則下載的封存會建立版本設定版本,為了確保封存內容不會變更,下載的封存最好有相關聯的版本卷標,可以隨著埠的"version"
遞增。
c000006:新埠會針對連結庫正式支援的三胞胎通過 CI 檢查
為了確保 vcpkg 埠品質很高,我們要求傳入的埠支援有問題的連結庫官方平臺。
c000007:修補程式修正僅限 vcpkg 特定的問題
可能的話,連結庫原始程式碼的修補程式應該上游至連結庫的官方存放庫。 開啟鏈接庫存放庫的提取要求將有助於改善每個人的連結庫,而不只是 vcpkg 使用者。
c000008:如果有的話,新的埠會從官方來源下載原始程式碼
若要尊重連結庫作者並保護程序代碼安全,請讓埠從官方來源下載原始程式碼。 如果原始原始原始程式碼無法使用,而且有大量社群對維護有問題的連結庫感興趣,我們可能會提出例外狀況。
c000009:正確命名埠和埠功能
針對用戶輔助功能,我們偏好使用埠和埠功能的名稱,使其與官方來源和其他套件管理員中的對應專案更直覺且接近。 如果您不確定埠或埠功能的命名,建議您使用搜尋引擎檢查 repology.org、packages.ubuntu.com 或搜尋其他資訊。 我們也可以協助參與者進行這項操作,因此,如果您不確定,您可以隨意要求命名建議。
c000010:適當時導出連結庫目標
若要為使用者提供順暢的建置系統整合,請務必匯出並提供尋找要用於下游的連結庫目標的方法。 不應匯出的目標應標示為私用且未匯出。
c000011:埠不使用修改使用者系統的應用程式
埠應藉由避免執行此動作的應用程式,維護 vcpkg 的合約,不要修改用戶的系統。 這些應用程式的範例包括 sudo
、 apt
、 brew
或 pip
。 請盡可能使用這些類型的程式替代方案。
c000012:具有系統相依性的埠會在安裝期間包含資訊訊息
某些埠具有連結庫和工具相依性,不存在於 vcpkg 內。 針對這些遺漏的相依性,我們會要求參與者將訊息新增至埠頂端, portfile.cmake
指出遺漏的相依性,以及如何取得它們。 我們要求在完成任何主要工作之前顯示訊息,以確保使用者可以儘快「早出」安裝程式,以防他們遺失相依性。
範例:
message(
"${PORT} currently requires the following libraries from the system package manager:
autoconf libtool
These can be installed on Ubuntu systems via sudo apt install autoconf libtool"
)
c000013:會使用指令清單檔案,而不是新埠的CONTROL檔案
許多現有的埠都使用CONTROL檔案語法;雖然此語法將在未來一段時間受到支援,但新的埠不應該使用這些埠。 任何新增的埠 都必須 使用指令清單檔。
我們也建議您在對埠進行重大修改時,該埠會切換至指令清單檔案;不過,這並非必要。 您可能會發現 vcpkg format-manifest
很有用。