piotrmurach / tty

Toolkit for developing sleek command line apps.
https://ttytoolkit.org
MIT License
2.5k stars 78 forks source link

Warnings with ruby 2.7 #60

Closed bougyman closed 4 years ago

bougyman commented 4 years ago

Describe the problem

Specs fail on ruby 2.7.0p0, mostly due to deprecation of hash argument being treated as keywords by ruby < 2.7.0 but deprecated in 2.7.0+.

Steps to reproduce the problem

bundle exec rake spec using ruby 2.7.0p0

Actual behaviour

Finished in 10.59 seconds (files took 0.39076 seconds to load)
42 examples, 20 failures, 1 pending

Failed examples:

rspec ./spec/integration/new_spec.rb:271 # teletype new generates C extensions boilerplate
rspec ./spec/integration/new_spec.rb:292 # teletype new generates code of conduct file
rspec ./spec/integration/new_spec.rb:321 # teletype new displays help
rspec ./spec/integration/new_spec.rb:5 # teletype new generates cli application
rspec ./spec/integration/new_namespaced_spec.rb:2 # teletype new generates cli application namespaced
rspec ./spec/integration/add_force_spec.rb:2 # `teletype add --force` command forces adding already existing command
rspec ./spec/integration/add_subcommand_spec.rb:2 # `teletype add` subcommad adds a new subcommand
rspec ./spec/integration/add_subcommand_spec.rb:175 # `teletype add` subcommad adds a new subcommand with minitest
rspec ./spec/integration/add_spec.rb:238 # `teletype add` command adds more than one command to cli file
rspec ./spec/integration/add_spec.rb:2 # `teletype add` command adds a command
rspec ./spec/integration/add_spec.rb:343 # `teletype add` command adds complex command name as camel case
rspec ./spec/integration/add_spec.rb:415 # `teletype add` command adds complex command name as snake case
rspec ./spec/integration/add_spec.rb:122 # `teletype add` command adds a command with minitests
rspec ./spec/integration/add_spec.rb:498 # `teletype add` command displays help
rspec ./spec/integration/add_spec.rb:186 # `teletype add` command adds command in cli without any commands
rspec ./spec/integration/add_namespaced_spec.rb:127 # teletype add adds a subcommand to namespaced application
rspec ./spec/integration/add_namespaced_spec.rb:2 # teletype add adds a command to namespaced application
rspec ./spec/integration/add_desc_args_spec.rb:124 # `teletype add --desc --args` command adds command with variadic number of arguments
rspec ./spec/integration/add_desc_args_spec.rb:250 # `teletype add --desc --args` command adds subcommand with description and custom arguments
rspec ./spec/integration/add_desc_args_spec.rb:4 # `teletype add --desc --args` command adds command with description and custom arguments

Expected behaviour

Specs to pass

Describe your environment

piotrmurach commented 4 years ago

Thanks for using tty and reporting this issue.

I started to fix Ruby 2.7.0 warnings in tty dependencies sometime ago. The tty-file and tty-command are the most urgent now to fix.