libgit2 / libgit2/libgit2sharp
Throw when xxxOptions are null
オープン
まだ誰も着手していません。
Easy fix
Stabilization
Up for grabs
- 主要言語
- C#
- スター
- 3.5k
- フォーク
- 925
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
From https://github.com/libgit2/libgit2sharp/pull/1068/files#r31650592
We rely on the following pattern throughout the codebase.
public Things DoThings()
{
return DoThings(null);
}
public Things DoThings(ThingsOptions options)
{
options = options ?? new ThingsOptions();
[...]
}
Let's change this to the following one
public Things DoThings()
{
return DoThings(new ThingsOptions());
}
public Things DoThings(ThingsOptions options)
{
Ensure.ArgumentNotNull(options);
[...]
}
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
C# コードベースで、xxxOptions を受け取り、現在 null を新しいオプションインスタンスに置き換えているオーバーロードを検索します。まず参照されている pull request のディスカッションを確認し、その後、影響を受けるすべてのオーバーロードと、それに対応するパラメーターなしのものを特定します。これらのオーバーロードが null のオプションを拒否し、パラメーターなしの呼び出しがデフォルトのオプションオブジェクトを構築すれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- csharp
- 領域
- backend-api-design
- issue の種類
- リファクタリング
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100