commandlineparser / commandlineparser/commandline
No error when parsing unknown arguments after verb
- 主要言語
- C#
- スター
- 4.8k
- フォーク
- 478
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
You can try this with your CLI program (replace `program.exe verb` as appropriate):
`program.exe verb unknownarg`
Replace unknownarg with any random inputs as long as they don't start with `-` and `Parser.Default.ParseArguments` will return `ParserResult.WithParsed`.
It doesn't matter what the value of `ParserSettings.IgnoreUnknownArguments` is.
I don't know if this is a bug or just hasn't been implemented but this is a fundamental problem with the built-in validation of this library.
Does anyone have any solutions to catch unknown args?
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
まず、`Parser.Default.ParseArguments` を通じて `program.exe verb unknownarg` を再現し、説明どおりに `ParserSettings.IgnoreUnknownArguments` を変化させます。verb と位置引数のパース経路を追跡します。不明な引数が意図した検証動作と一貫して処理され、報告されたケースが回帰テストでカバーされた時点で issue は完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- csharp
- 領域
- cli
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100