optparse
optparse copied to clipboard
Ruby 3.3.5 --help throws error if parser.require_exact = true
ruby -v shows ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]
gem list --local shows optparse (default: 0.4.0)
Snippet:
require 'optparse'
parser = OptionParser.new
parser.on('-x [XXX]', 'description') do |value|
p ['-x', value]
end
parser.require_exact = true
parser.parse!
Results in an error:
/home/elovell/.rubies/ruby-master/lib/ruby/3.3.0/optparse.rb:1645:in `block in parse_in_order': undefined method `include?' for nil (NoMethodError)
if require_exact && !sw.long.include?(arg)
^^^^^^^^^
from /home/elovell/.rubies/ruby-master/lib/ruby/3.3.0/optparse.rb:1636:in `catch'
from /home/elovell/.rubies/ruby-master/lib/ruby/3.3.0/optparse.rb:1636:in `parse_in_order'
from /home/elovell/.rubies/ruby-master/lib/ruby/3.3.0/optparse.rb:1630:in `order!'
from /home/elovell/.rubies/ruby-master/lib/ruby/3.3.0/optparse.rb:1739:in `permute!'
from /home/elovell/.rubies/ruby-master/lib/ruby/3.3.0/optparse.rb:1764:in `parse!'
from test.rb:9:in `<main>'
Removing parser.require_exact = true results in
Usage: test [options]
-x [XXX] description