Closed
Description
It would be good to see the version requirements in Annotate README. After upgrading Annotate from version 2.6.5 to 3.1.0 there seems to be Ruby version related problem. After upgrade it complains the following:
bundler: failed to load command: annotate (/home/vagrant/.bundle/ruby/2.3.0/bin/annotate)
NoMethodError: undefined method `match?' for /^(true|t|yes|y|1)$/i:Regexp
Did you mean? match
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate/helpers.rb:18:in `true?'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate.rb:50:in `block in setup_options'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate.rb:49:in `each'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate.rb:49:in `setup_options'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/bin/annotate:26:in `<top (required)>'
/home/vagrant/.bundle/ruby/2.3.0/bin/annotate:22:in `load'
/home/vagrant/.bundle/ruby/2.3.0/bin/annotate:22:in `<top (required)>'
When checking the Ruby method match?
I see that it was introduced in version 2.4.6 (https://apidock.com/ruby/Regexp/match%3F) while I'm using 2.3.8.
Commands
vagrant@dev-2:/mnt/path/app$ ./bin/bundle exec annotate
Annotated (4): Model1, Model2, Model3, Model4
vagrant@dev-2:/mnt/path/app$ ./bin/bundle update annotate
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies....
Using rake 13.0.1 (was 12.3.3)
Using concurrent-ruby 1.1.6 (was 1.1.5)
Using i18n 0.9.5
Using minitest 5.14.0 (was 5.11.3)
Using thread_safe 0.3.6
Using tzinfo 1.2.6 (was 1.2.5)
Using activesupport 4.2.11.1
Using builder 3.2.4 (was 3.2.3)
Using erubis 2.7.0
Using mini_portile2 2.4.0
Using nokogiri 1.10.4
Using rails-deprecated_sanitizer 1.0.3
Using rails-dom-testing 1.0.9
Using crass 1.0.4
Using loofah 2.2.3
Using rails-html-sanitizer 1.2.0
Using actionview 4.2.11.1
Using rack 1.6.11
Using rack-test 0.6.3
Using actionpack 4.2.11.1
Using globalid 0.4.2
Using activejob 4.2.11.1
Using mini_mime 1.0.2
Using mail 2.7.1
Using actionmailer 4.2.11.1
Using activemodel 4.2.11.1
Using arel 6.0.4
Using activerecord 4.2.11.1
Using addressable 2.4.0
Using multi_json 1.13.1
Using airbrake 4.3.8
Using annotate 3.1.0 (was 2.6.5)
.
.
.
vagrant@dev-2:/mnt/path/app$ ./bin/bundle exec annotate
bundler: failed to load command: annotate (/home/vagrant/.bundle/ruby/2.3.0/bin/annotate)
NoMethodError: undefined method `match?' for /^(true|t|yes|y|1)$/i:Regexp
Did you mean? match
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate/helpers.rb:18:in `true?'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate.rb:50:in `block in setup_options'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate.rb:49:in `each'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/lib/annotate.rb:49:in `setup_options'
/home/vagrant/.bundle/ruby/2.3.0/gems/annotate-3.1.0/bin/annotate:26:in `<top (required)>'
/home/vagrant/.bundle/ruby/2.3.0/bin/annotate:22:in `load'
/home/vagrant/.bundle/ruby/2.3.0/bin/annotate:22:in `<top (required)>'
Version
- Annotate: 2.6.5, updated to 3.1.0 and after that not working
- Rails: 4.2.11.1
- Ruby: 2.3.8