Rails 4 (beta1) depends on Rdoc ~>3.4 but Ruby 2 on Rdoc 4

Gemfile.lock

...
railties (4.0.0.beta1)
  actionpack (= 4.0.0.beta1)
  activesupport (= 4.0.0.beta1)
  rake (>= 0.8.7)
  rdoc (~> 3.4)
  thor (>= 0.17.0, < 2.0)
...

So this fact makes ri not work in a Ruby 2 + Rails 4 project at the moment… I suspect this could be the reason why docs were not included by default by RVM. Or possibly the other way around, due to the fact that docs are never included by default (so seldom used), Rails developers didn’t see there was a problem.

The easiest temporary fix is to use the full path to (the good) ri:

$ /Users/.../.rvm/rubies/ruby-2.0.0-p0/bin/ri String

Another temporary fix (I’m currently using this one) is to

  1. manually edit the Gemfile.lock such that above line reads instead
    rdoc (>= 3.4)
  2. execute
    $ bundle update rdoc

After that, you can again execute ri without specifying its path.

$ ri String

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.