【问题标题】:Roo deprecated roo methodRoo 已弃用 roo 方法
【发布时间】:2016-09-29 08:09:47
【问题描述】:

在 Windows 上通过以下代码使用 roo gem:

require 'roo'
require 'roo-xls'

workbook = Roo::Excel.new 'test.xls'

我收到消息到 STDOUT

[DEPRECATION] extend Roo::Tempdir and use its .make_tempdir instead

之后代码运行良好,我可以做任何我想做的事情。但是,我想摆脱这条消息(不创建一个新类或类似的东西,它只是打开一个文件......对吗?)。我该怎么做?

【问题讨论】:

    标签: ruby xls roo-gem


    【解决方案1】:

    正确的解决方法是不使用已弃用的方法,而是使用推荐的方法。但是,在这种情况下,不是您在使用已弃用的方法it's the author of roo-xls

    make_tmpdir do |tmpdir| # …
    

    所以,你唯一能做的就是:

    1. 针对roo-xls 提交错误报告,最好使用修复问题的拉取请求(实际上是前者was already done for you
    2. 暂时suppress deprecation warnings,直到上游问题解决; Roo 使用Kernel#warn,所以很遗憾您只能关闭所有警告,但这样的事情应该可以工作:

      original_warning_level = $VERBOSE
      $VERBOSE = nil
      
      workbook = Roo::Excel.new 'test.xls'
      
      $VERBOSE = original_warning_level
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-13
      • 2012-01-05
      • 2012-10-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多