r7kamura/ruboty

Error of load option with slop v4.0.0

Closed this issue · 1 comments

Hi. Some problems occur, using --load option with slop 4.0.0.

1) A case the problems have occured

Gemfile
source "https://rubygems.org"
gem "ruboty"
handlers.rb
puts "handlers.rb is loaded!"
slop version
$ bundle list | grep slop
  * slop (4.0.0)
run ruboty

Running with long option --load, Slop::UnknownOption occurs:

$ bundle exec ruboty --load handlers.rb
/Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/slop-4.0.0/lib/slop/parser.rb:98:in `try_process': unknown option `--load' (Slop::UnknownOption)
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/slop-4.0.0/lib/slop/parser.rb:53:in `block in parse'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/slop-4.0.0/lib/slop/parser.rb:44:in `each'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/slop-4.0.0/lib/slop/parser.rb:44:in `parse'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/slop-4.0.0/lib/slop/options.rb:71:in `parse'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/slop-4.0.0/lib/slop.rb:24:in `parse'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/ruboty-1.1.4/lib/ruboty/command_builder.rb:29:in `options'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/mem-0.1.5/lib/mem.rb:44:in `block in memoize'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/ruboty-1.1.4/lib/ruboty/command_builder.rb:19:in `command_class'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/ruboty-1.1.4/lib/ruboty/command_builder.rb:12:in `build'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/gems/ruboty-1.1.4/bin/ruboty:6:in `<top (required)>'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/bin/ruboty:23:in `load'
    from /Users/nownabe/ruboty/vendor/bundle/ruby/2.2.0/bin/ruboty:23:in `<main>'

(bundle exec ruboty --load=handlers.rb raised same error.)

Running with short option -l, Slop::UnknownOption doesn't occure, but handlers.rb is not loaded.

$ bundle exec ruboty -l handlers.rb
Type `exit` or `quit` to end the session.
> exit

2) A case the same operation as 1) is completed with slop v3.6.0

Gemfile
source "https://rubygems.org"
gem "ruboty"
gem "slop", "~> 3.6"
handlers.rb
puts "handlers.rb is loaded!"
slop version
$ bundle list | grep slop
  * slop (3.6.0)
run ruboty

There is no problem with any load options (--load, --load= or -l):

$ bundle exec ruboty --load handlers.rb
handlers.rb is loaded!
Type `exit` or `quit` to end the session.
> exit

Fixed by v1.1.5 (#13) 🎉