次の方法で共有


vcpkg PR レビュー チェックリスト

リビジョン: 1

概要

このドキュメントでは、vcpkg チーム メンバーが受信プル要求に "reviewed" ラベルを適用するために使用する注釈付きチェックリストを提供します。 プル要求がこれらのポイントのいずれかに違反している場合は、変更セットをマージする前に、必要な変更を行うように共同作成者に依頼する場合があります。

このチェックリストを改善できる場合は、問題や pull request を自由に作成してください。 チェックリストの内容を変更するときは、リビジョン番号を増やしてください。

チェック リスト

GitHub コメント内のこれらのチェックリスト項目のいずれかをリンクするには、各項目コードに添付されているリンク アドレスをコピーします。

c000001: 非推奨のヘルパー関数は使用されません

詳細については、メンテナーのガイドラインとポリシーを参照してください。

c000002: '"port-version"' フィールドが更新されました

詳細については、メンテナーのガイドラインとポリシーを参照してください。

c000003: 新しいポートには、英語で記述された "description"フィールドが含まれています

説明は、1 文または数文だけ役立ちます。 可能であれば、ライブラリの公式な説明 README.md を使用することを検討してください。 自動翻訳は受け付け可能であり、私たちは私たちの貢献者のために英語に翻訳をクリーンさせていただきます。

詳細については、 マニフェスト ファイルのドキュメント を参照してください。

c000004: 変更セットに不要なコメントはありません

詳細については、メンテナーのガイドラインとポリシーを参照してください。

c000005: ダウンロードしたアーカイブは、利用可能な場合はバージョン管理されます アーカイブコンテンツが変更されないようにするために、ダウンロードされたアーカイブには、ポート "version"と一緒にインクリメントできるバージョンタグが関連付けられていることが望ましいです。

c000006: 新しいポートは、ライブラリが正式にサポートするトリプレットの CI チェックを渡します

vcpkg ポートが高品質であることを確認するために、受信ポートが該当するライブラリの公式プラットフォームをサポートするように依頼します。

c000007: パッチは vcpkg 固有のみの問題を修正します

可能であれば、ライブラリのソース コードへのパッチは、ライブラリの公式リポジトリにアップストリームする必要があります。 ライブラリのリポジトリで pull request を開くと、vcpkg ユーザーだけでなく、すべてのユーザーのライブラリを改善するのに役立ちます。

c000008: 新しいポートは、使用可能な場合は公式ソースからソース コードをダウンロードします

ライブラリ作成者を尊重し、コードを安全に保つために、ポートに公式ソースからソース コードをダウンロードしてください。 元のソース コードが利用できない場合、および問題のライブラリをメインに関するコミュニティの関心が高い場合は、例外が発生する可能性があります。

c000009: ポートとポート機能の名前が正しく指定されている

ユーザーのアクセシビリティのためには、ポートとポート機能の名前を直感的に使用し、公式のソースや他のパッケージ マネージャーの対応する機能に近づけます。 ポートまたはポート機能の名前付けがわからない場合は、repology.org、packages.ubuntu.com、または検索エンジンを使用して追加情報を検索チェックすることをお勧めします。 また、共同作成者を支援することもできます。不明な場合は、名前付けの提案をお気軽にお問い合わせください。

c000010: ライブラリ ターゲットは、必要に応じてエクスポートされます

ユーザーにシームレスなビルド システム統合を提供するには、必ずエクスポートし、ダウンストリームで使用することを目的としたライブラリ ターゲットを見つける手段を提供してください。 エクスポート対象ではないターゲットは、プライベートとしてマークし、エクスポートしないようにする必要があります。

c000011: ポートは、ユーザーのシステムを変更するアプリケーションを使用しません

ポートは、ユーザーのシステムを変更しないという vcpkg のコントラクトを維持する必要があります。これを行うアプリケーションを回避します。 これらのアプリケーションの例としてはsudoaptbrewpip 可能な限り、これらの種類のプログラムの代わりに使用してください。

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