Rails废弃警告

4

我已经尝试了两个星期来消除这些过时警告,但一直没有成功。如果有人能指点我正确的方向,我将不胜感激。

第一个警告:

WARNING: using the built-in Timeout class which is known to have issues when used for         opening connections. Install the SystemTimer gem if you want to make sure the Redis client will not hang.

第二个警告

/Users/ChuckJHardy/.rvm/gems/ree-1.8.7-2010.02/gems/bundler-1.0.7/lib/bundler/shared_helpers.rb:101:Warning: Gem::LoadError#version_requirement= is deprecated and will be removed on or after January 2011. Use #requirement.

第三个警告

/Users/ChuckJHardy/Code/Sites/www/vendor/rails/railties/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010.  Use #requirement
3个回答

3
第一个错误来自REDIS。从快速搜索中可以看出,当Redis尝试加载gem system_timer时会出现此错误。尝试将其添加到gems中,看看是否解决问题。
第二个和第三个错误似乎是rails 2.3.5和ruby enterprise edition中的此问题。更多信息请参见lighthouse ticket,其中包括一些修复方法。

我按照两者的方法,并且像Phillip Koebbe在lighthouse ticket中所做的那样去操作了。然而,我仍然收到完全相同的警告信息。感谢您的时间和努力。 - ChuckJHardy

2

首先,按照指示安装 SystemTimer 宝石包。

rvmsudo gem install systemtimer

接下来两步,需要升级rubygems。

rvmsudo gem update --system

错误:在任何存储库中都找不到有效的gem 'systemtimer'(>= 0)。 - ChuckJHardy
抱歉 - 按下回车键太快了 - 已经尝试了这两个方法。系统时间只是显示未找到错误,而Rubygems则显示无需更新。有什么想法吗? - ChuckJHardy
1
rvmsudo gem install SystemTimer。 - ChuckJHardy
不确定后两个,它们正在检查Gem :: LoadErrorGem :: Dependency对象是否响应requirements而不是version_requirements-如果您使用最新版本的rubygems,则不确定为什么会失败。 - Chris Heald

0

好的,一个侧面的解决方案。将此放置在您的环境或初始化文件中。

ActiveSupport::Deprecation.silenced = true

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接