Long options that start with `--no-*` are negated even when its explicitly defined as an option
まだ誰も着手していません。
評価
調査の方向性
lib/mixlib/cli.rb の、報告された 290 行目付近にある opt_parser と parse_options のパスから始めます。sensu-plugins-disk-checks コマンドで --no-smart-capable-disks を使って失敗を再現し、その後、明示的に定義されたオプションが false.to_sym 例外なしでパースされることを確認します。
索引モデルが issue の本文から書いたものです。
説明
Version:
mixlib-cli-1.7.0
Environment:
Unsure see: https://github.com/sensu-plugins/sensu-plugins-disk-checks/issues/94
Scenario:
Use an arg such as --no-smart-capable-disks with a -
Steps to Reproduce:
- clone repo: https://github.com/sensu-plugins/sensu-plugins-disk-checks
- run
bundle - run script:
$ bundle exec ./bin/check-smart.rb --no-smart-capable-disks
Check failed to run: undefined method `to_sym' for false:FalseClass
Did you mean? to_s, ["/home/babrams/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/mixlib-cli-1.7.0/lib/mixlib/cli.rb:290:in `block (3 levels) in opt_parser'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/2.4.0/optparse.rb:1552:in `block in parse_in_order'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/2.4.0/optparse.rb:1538:in `catch'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/2.4.0/optparse.rb:1538:in `parse_in_order'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/2.4.0/optparse.rb:1532:in `order!'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/2.4.0/optparse.rb:1626:in `permute!'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/2.4.0/optparse.rb:1648:in `parse!'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/mixlib-cli-1.7.0/lib/mixlib/cli.rb:230:in `parse_options'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/sensu-plugin-1.4.5/lib/sensu-plugin/cli.rb:13:in `initialize'", "./bin/check-smart.rb:138:in `initialize'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/sensu-plugin-1.4.5/lib/sensu-plugin/cli.rb:57:in `new'", "/home/babrams/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/sensu-plugin-1.4.5/lib/sensu-plugin/cli.rb:57:in `block in <class:CLI>'"]
Expected Result:
Argument should work
Actual Result:
It blows up and does not parse the arguments properly
- 主要言語
- Ruby
- スター
- 118
- フォーク
- 40
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
chef/mixlib-cli のほかの issue
-
Triage: Feature Request
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
chef/mixlib-cli#70 ·
-
Triage: Feature Request
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
chef/mixlib-cli#69 ·
-
Option validationsオープンTriage: Feature Request
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
chef/mixlib-cli#38 · コメント 1 件 ·
-
Triage: Feature Request
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
chef/mixlib-cli#27 ·
chef/mixlib-cli の issue をすべて見る
似ている issue
-
ETQ admin, le select de condition d'une annotation répétable liste les champs publics deux foisオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
demarche-numerique/demarche.numerique.gouv.fr#14301 ·
メンテナーはふだん 1 日以内に返信
-
needs verification
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 6 日以内に返信
-
L: java:gradle L: java:maven L: ruby:bundler T: bug 🐞
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
dependabot/dependabot-core#16547 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 8 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信