2012-05-13 3 views
6

Mam zainstalowany MacPorts Ruby on Rails, który aktualizuję i poprawiam od wczoraj, ponieważ chcę wrócić do nauki tego języka.Błąd aktualizacji Ruby Docs

Specyfikacja

ruby -v 
ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-darwin10] 
rails -v 
Rails 3.0.3 
gem -v 
1.8.5 

The Journey

Do tej pory to było dość podróż, aby uzyskać Ruby, Rails i klejnotów do pracy na moim Macu. Na następujących tutorial postanowiłem zainstalować/zaktualizować Rails API docs i wpadłem na tych błędów:

Password: 
NOTE: Gem::SourceIndex.from_installed_gems is deprecated with no replacement. It will be removed on or after 2011-10-01. 
Gem::SourceIndex.from_installed_gems called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/commands/rdoc_command.rb:58. 
NOTE: Gem::SourceIndex.installed_spec_directories is deprecated, use Specification.dirs. It will be removed on or after 2011-11-01. 
Gem::SourceIndex.installed_spec_directories called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:47. 
NOTE: Gem::SourceIndex.from_gems_in is deprecated with no replacement. It will be removed on or after 2011-10-01. 
Gem::SourceIndex.from_gems_in called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:47. 
NOTE: Gem::SourceIndex#initialize is deprecated with no replacement. It will be removed on or after 2011-11-01. 
Gem::SourceIndex#initialize called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:67. 
NOTE: Gem::SourceIndex#spec_dirs= is deprecated, use Specification.dirs=. It will be removed on or after 2011-11-01. 
Gem::SourceIndex#spec_dirs= called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:94. 
NOTE: Gem::SourceIndex#refresh! is deprecated with no replacement. It will be removed on or after 2011-11-01. 
Gem::SourceIndex#refresh! called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:95. 
NOTE: Gem::SourceIndex#load_gems_in is deprecated with no replacement. It will be removed on or after 2011-11-01. 
Gem::SourceIndex#load_gems_in called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:320. 
NOTE: Gem::SourceIndex#add_spec is deprecated, use Specification.add_spec. It will be removed on or after 2011-11-01. 
Gem::SourceIndex#add_spec called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:127. 
NOTE: Gem::SourceIndex#add_spec is deprecated, use Specification.add_spec. It will be removed on or after 2011-11-01. 
Gem::SourceIndex#each called from /opt/local/lib/ruby/site_ruby/1.8/rubygems/commands/rdoc_command.rb:58. 
Installing ri documentation for activesupport-3.2.3... 

unrecognized option `--encoding' 

For help on options, try 'rdoc --help' 

ERROR: While generating documentation for activesupport-3.2.3 
... MESSAGE: exit 
... RDOC args: --ri --op /opt/local/lib/ruby/gems/1.8/doc/activesupport-3.2.3/ri --encoding UTF-8 lib --title activesupport-3.2.3 Documentation --quiet 

kiedy zrobiłem gem server serwer został uruchomiony. Więc prawdopodobnie zainstalowałem dokumenty rok temu i całkowicie o tym zapomniałem.

Co mogę zrobić, aby pozbyć się tych wszystkich błędów? Czy mogę je bezpiecznie zignorować i kontynuować?

Odpowiedz

8

Możesz bezpiecznie zignorować te błędy.

Na razie można instalować klejnoty, określając gem install rails --no-ri --no-rdoc, aby zainstalować Railsy bez tych błędów.

A w przyszłości, można dodać:

gem: --no-ri --no-rdoc 

do pliku ~/.gemrc, aby globalnie ignorować dokumentacja dla przyszłych gem instaluje.

Ponadto, jeśli dopiero zaczynasz, polecam używanie menedżera wersji ruby, takiego jak rvm lub rbenv. To znacznie ułatwia życie przy zarządzaniu różnymi wersjami rubinów i klejnotów.

+0

Dzięki za wejście @Mark Sands! Jesteś drugim facetem polecającym RVM. Idę o to popatrzeć.Zauważyłem także, że książka RailsSpace, którą kupiłem jakiś czas temu, zawiera dużo kodu, który jest przestarzały. – rhand

+0

Nie ma problemu! Koniecznie zapoznaj się z zaletami i wadami rvm i rbenv, aby sformułować własne zdanie na temat tego, którego menedżera wersji użyć. –

3

Otrzymuję te same ostrzeżenia tutaj na Debian linux i używam rvm z ruby-1.9.3-p194.

ja wyeliminować większość z nich zmieniając linię 127

~/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/source_index.rb 

127 add_spec gemspec if gemspec do 127 Gem::Specification.add_spec gemspec if gemspec

Co do innych Mówią nieaktualne bez wymiany.

Znalazłem tylko ten wątek, ponieważ próbuję dowiedzieć się więcej na ten temat. Czy ktoś przypuszcza, że ​​jest aktualizacja? Ostrzeżenia informują, że zostaną one usunięte w dniu 2011-11-01 lub później. Czas nadszedł i minął.

5

Wypróbuj gem install rdoc lub gem update rdoc, jeśli masz wersję rdoc < 3.0.

RDoc generuje dokumentację z plików źródłowych Ruby. Tak więc, jak mówi @Mark Sands, nie jest absolutnie konieczne, aby twój kod był uruchamiany, może być przyjemnie mieć i adresować źródło twoich błędów.

+0

+1, ponieważ o wiele łatwiej jest rozwiązać problem, niż go obejść ... –