我有一个应用程序,我刚刚添加了Simplecov以获取代码覆盖率统计信息。添加此Gem后,我开始收到以下错误:
/Users/KristaOdger/.rvm/gems/jruby-1.7.6/gems/lockfile-2.1.0/lib/lockfile.rb:72 warning: optional boolean argument is obsoleted
/Users/KristaOdger/.rvm/gems/jruby-1.7.6/gems/lockfile-2.1.0/lib/lockfile.rb:73 warning: optional boolean argument is obsoleted
/Users/KristaOdger/.rvm/gems/jruby-1.7.6/gems/lockfile-2.1.0/lib/lockfile.rb:74 warning: optional boolean argument is obsoleted
/Users/KristaOdger/.rvm/gems/jruby-1.7.6/gems/lockfile-2.1.0/lib/lockfile.rb:75 warning: optional boolean argument is obsoleted
(当我启动rails服务器时,大约有20行像这样打印出来)
它们似乎只是警告,所以我并不是非常担心,但摆脱它们会很好。 Simplecov和lockfile gems都已经是最新版本(Simplecov 0.8.1和lockfile 2.1.0),所以我无法更新其中一个......还有其他人遇到过吗?
修改:其他环境详情
Jruby 1.7.6,Rails 3.1.3,Warbler 1.3.8,Bundler 1.3.5
答案 0 :(得分:0)
这看起来像是使用attr()
函数指定类/模块属性(而不是attr_accessor
,attr_writer
或attr_reader
)
您可以从Module attr() function的来源看到,为该函数指定布尔参数的语法现在已过时。 (没有布尔参数或假布尔arg会创建一个可读属性,其中真正的布尔arg会产生可读和可写属性。)
看起来没有必要修复任何东西,它不会导致问题 - 仍然会创建具有正确访问者级别的正确属性...但是如果支持被彻底删除,它可能会在将来导致问题。 ..展望未来,宝石应该使用正确的attr_accessor
,writer
和reader
方法来声明属性。